| |
| # These values are ignored, they are here just to be referenced below. |
| constants: |
| num_bindings_column: &num_bindings_column |
| dimension: "num_bindings" |
| pretty_printer: |
| format_string: "%s bindings" |
| |
| num_classes_column: &num_classes_column |
| dimension: "num_classes" |
| pretty_printer: |
| format_string: "%s classes" |
| |
| compiler_name_row: &compiler_name_row |
| dimension: "compiler_name" |
| pretty_printer: |
| format_string: "%s" |
| |
| tables: |
| # Main Fruit benchmark tables |
| |
| - name: "Fruit compile time (single file)" |
| benchmark_filter: |
| name: "fruit_single_file_compile_time" |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: *num_bindings_column |
| rows: *compiler_name_row |
| results: |
| dimension: "compile_time" |
| unit: "seconds" |
| |
| - name: "Fruit compile time" |
| benchmark_filter: |
| name: "fruit_compile_time" |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: *num_classes_column |
| rows: *compiler_name_row |
| results: |
| dimension: "compile_time" |
| unit: "seconds" |
| |
| - name: "Fruit full injection time" |
| benchmark_filter: |
| name: "fruit_run_time" |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: *num_classes_column |
| rows: *compiler_name_row |
| results: |
| dimension: "Full injection time" |
| unit: "seconds" |
| |
| - name: "Fruit setup time" |
| benchmark_filter: |
| name: "fruit_run_time" |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: *num_classes_column |
| rows: *compiler_name_row |
| results: |
| dimension: "Total for setup" |
| unit: "seconds" |
| |
| - name: "Fruit per-request time" |
| benchmark_filter: |
| name: "fruit_run_time" |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: *num_classes_column |
| rows: *compiler_name_row |
| results: |
| dimension: "Total per request" |
| unit: "seconds" |
| |
| - name: "New/delete time" |
| benchmark_filter: |
| name: "new_delete_run_time" |
| additional_cmake_args: [] |
| columns: *num_classes_column |
| rows: *compiler_name_row |
| results: |
| dimension: "Total" |
| unit: "seconds" |
| |
| # The following tables compare Fruit to Boost.DI |
| |
| - name: "Compile time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "name" |
| pretty_printer: |
| fixed_map: |
| "fruit_compile_time": "Fruit" |
| "boost_di_compile_time": "Boost.DI" |
| rows: *compiler_name_row |
| results: |
| dimension: "compile_time" |
| unit: "seconds" |
| |
| - name: "Full injection time" |
| benchmark_filter: |
| num_classes: 100 |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "name" |
| pretty_printer: |
| fixed_map: |
| "fruit_run_time": "Fruit" |
| "boost_di_run_time": "Boost.DI" |
| rows: *compiler_name_row |
| results: |
| dimension: "Full injection time" |
| unit: "seconds" |
| |
| - name: "Setup time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "name" |
| pretty_printer: |
| fixed_map: |
| "fruit_run_time": "Fruit" |
| "boost_di_run_time": "Boost.DI" |
| rows: *compiler_name_row |
| results: |
| dimension: "Total for setup" |
| unit: "seconds" |
| |
| - name: "Per-request time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "name" |
| pretty_printer: |
| fixed_map: |
| "fruit_run_time": "Fruit" |
| "boost_di_run_time": "Boost.DI" |
| rows: *compiler_name_row |
| results: |
| dimension: "Total per request" |
| unit: "seconds" |
| |
| - name: "Executable size (stripped, 100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| additional_cmake_args: [] |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "name" |
| pretty_printer: |
| fixed_map: |
| "fruit_executable_size": "Fruit" |
| "boost_di_executable_size": "Boost.DI" |
| rows: *compiler_name_row |
| results: |
| dimension: "num_bytes" |
| unit: "bytes" |
| |
| |
| # The following tables compare various Fruit configurations |
| |
| - name: "Compile time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| name: "fruit_compile_time" |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "additional_cmake_args" |
| pretty_printer: |
| fixed_map: |
| - from: [] |
| to: "default" |
| - from: ["-DFRUIT_USES_BOOST=False"] |
| to: "With -DFRUIT_USES_BOOST=False" |
| - from: ["-DBUILD_SHARED_LIBS=False"] |
| to: "Statically-linking with Fruit" |
| rows: *compiler_name_row |
| results: |
| dimension: "compile_time" |
| unit: "seconds" |
| |
| - name: "Full injection time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| name: "fruit_run_time" |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "additional_cmake_args" |
| pretty_printer: |
| fixed_map: |
| - from: [] |
| to: "default" |
| - from: ["-DFRUIT_USES_BOOST=False"] |
| to: "With -DFRUIT_USES_BOOST=False" |
| - from: ["-DBUILD_SHARED_LIBS=False"] |
| to: "Statically-linking with Fruit" |
| rows: *compiler_name_row |
| results: |
| dimension: "Full injection time" |
| unit: "seconds" |
| |
| - name: "Setup time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| name: "fruit_run_time" |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "additional_cmake_args" |
| pretty_printer: |
| fixed_map: |
| - from: [] |
| to: "default" |
| - from: ["-DFRUIT_USES_BOOST=False"] |
| to: "With -DFRUIT_USES_BOOST=False" |
| - from: ["-DBUILD_SHARED_LIBS=False"] |
| to: "Statically-linking with Fruit" |
| rows: *compiler_name_row |
| results: |
| dimension: "Total for setup" |
| unit: "seconds" |
| |
| - name: "Per-request time (100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| name: "fruit_run_time" |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "additional_cmake_args" |
| pretty_printer: |
| fixed_map: |
| - from: [] |
| to: "default" |
| - from: ["-DFRUIT_USES_BOOST=False"] |
| to: "With -DFRUIT_USES_BOOST=False" |
| - from: ["-DBUILD_SHARED_LIBS=False"] |
| to: "Statically-linking with Fruit" |
| rows: *compiler_name_row |
| results: |
| dimension: "Total per request" |
| unit: "seconds" |
| |
| - name: "Executable size (stripped, 100 classes)" |
| benchmark_filter: |
| num_classes: 100 |
| name: "fruit_executable_size" |
| benchmark_generation_flags: ["use_fruit_2_x_syntax"] |
| columns: |
| dimension: "additional_cmake_args" |
| pretty_printer: |
| fixed_map: |
| - from: [] |
| to: "default" |
| - from: ["-DFRUIT_USES_BOOST=False"] |
| to: "With -DFRUIT_USES_BOOST=False" |
| - from: ["-DBUILD_SHARED_LIBS=False"] |
| to: "Statically-linking with Fruit" |
| rows: *compiler_name_row |
| results: |
| dimension: "num_bytes" |
| unit: "bytes" |