Improved rcl_yaml_param_parser benchmark test (#810)
Signed-off-by: ahcorde <ahcorde@gmail.com>
This commit is contained in:
parent
1c08083888
commit
f1bc651394
1 changed files with 6 additions and 12 deletions
|
@ -43,6 +43,8 @@ BENCHMARK_F(PerformanceTest, bool_copy_variant)(benchmark::State & st)
|
|||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
src_variant.bool_value = &bool_value;
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
for (auto _ : st) {
|
||||
if (!rcl_yaml_variant_copy(&dest_variant, &src_variant, allocator)) {
|
||||
st.SkipWithError(rcutils_get_error_string().str);
|
||||
|
@ -60,6 +62,8 @@ BENCHMARK_F(PerformanceTest, int_copy_variant)(benchmark::State & st)
|
|||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
src_variant.integer_value = &int_value;
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
for (auto _ : st) {
|
||||
if (!rcl_yaml_variant_copy(&dest_variant, &src_variant, allocator)) {
|
||||
st.SkipWithError(rcutils_get_error_string().str);
|
||||
|
@ -111,7 +115,6 @@ BENCHMARK_F(PerformanceTest, string_copy_variant)(benchmark::State & st)
|
|||
|
||||
BENCHMARK_F(PerformanceTest, array_bool_copy_variant)(benchmark::State & st)
|
||||
{
|
||||
bool bool_arry[kSize];
|
||||
rcl_variant_t src_variant{};
|
||||
rcl_variant_t dest_variant{};
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
|
@ -130,9 +133,6 @@ BENCHMARK_F(PerformanceTest, array_bool_copy_variant)(benchmark::State & st)
|
|||
dest_variant.bool_array_value = nullptr;
|
||||
});
|
||||
src_variant.bool_array_value->size = kSize;
|
||||
for (size_t i = 0; i < kSize; ++i) {
|
||||
src_variant.bool_array_value->values[i] = bool_arry[i];
|
||||
}
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
|
@ -147,7 +147,6 @@ BENCHMARK_F(PerformanceTest, array_bool_copy_variant)(benchmark::State & st)
|
|||
|
||||
BENCHMARK_F(PerformanceTest, array_int_copy_variant)(benchmark::State & st)
|
||||
{
|
||||
int int_arry[kSize];
|
||||
rcl_variant_t src_variant{};
|
||||
rcl_variant_t dest_variant{};
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
|
@ -166,9 +165,6 @@ BENCHMARK_F(PerformanceTest, array_int_copy_variant)(benchmark::State & st)
|
|||
dest_variant.integer_array_value = nullptr;
|
||||
});
|
||||
src_variant.integer_array_value->size = kSize;
|
||||
for (size_t i = 0; i < kSize; ++i) {
|
||||
src_variant.integer_array_value->values[i] = int_arry[i];
|
||||
}
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
|
@ -183,7 +179,6 @@ BENCHMARK_F(PerformanceTest, array_int_copy_variant)(benchmark::State & st)
|
|||
|
||||
BENCHMARK_F(PerformanceTest, array_double_copy_variant)(benchmark::State & st)
|
||||
{
|
||||
double double_arry[kSize];
|
||||
rcl_variant_t src_variant{};
|
||||
rcl_variant_t dest_variant{};
|
||||
rcutils_allocator_t allocator = rcutils_get_default_allocator();
|
||||
|
@ -202,9 +197,6 @@ BENCHMARK_F(PerformanceTest, array_double_copy_variant)(benchmark::State & st)
|
|||
dest_variant.double_array_value = nullptr;
|
||||
});
|
||||
src_variant.double_array_value->size = kSize;
|
||||
for (size_t i = 0; i < kSize; ++i) {
|
||||
src_variant.double_array_value->values[i] = double_arry[i];
|
||||
}
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
|
@ -238,12 +230,14 @@ BENCHMARK_F(PerformanceTest, array_string_copy_variant)(benchmark::State & st)
|
|||
st.SkipWithError(rcutils_get_error_string().str);
|
||||
}
|
||||
src_variant.string_array_value->size = kSize;
|
||||
|
||||
for (size_t i = 0; i < kSize; i++) {
|
||||
src_variant.string_array_value->data[i] = rcutils_strdup("string", allocator);
|
||||
if (src_variant.string_array_value->data[i] == NULL) {
|
||||
st.SkipWithError(rcutils_get_error_string().str);
|
||||
}
|
||||
}
|
||||
|
||||
reset_heap_counters();
|
||||
|
||||
for (auto _ : st) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue