diff --git a/irobot_benchmark/CMakeLists.txt b/irobot_benchmark/CMakeLists.txt index 54f80f85..2f1ecb58 100644 --- a/irobot_benchmark/CMakeLists.txt +++ b/irobot_benchmark/CMakeLists.txt @@ -24,20 +24,90 @@ install(TARGETS DESTINATION lib/${PROJECT_NAME} ) -set(TOPOLOGY_FILES - topology/sierra_nevada.json - topology/cedar.json - topology/mont_blanc.json - topology/white_mountain.json - topology/debug_sierra_nevada_reliable.json - topology/debug_sierra_nevada_best_effort.json - topology/debug_mont_blanc_reliable.json - topology/debug_mont_blanc_best_effort.json +set(FT topology/full_topologies) + +set(TEST_TOPOLOGY_FILES + ${FT}/cedar.json + ${FT}/debug_mont_blanc_best_effort.json + ${FT}/debug_mont_blanc_reliable.json + ${FT}/debug_sierra_nevada_best_effort.json + ${FT}/debug_sierra_nevada_reliable.json + ${FT}/debug_white_mountain_best_effort.json + ${FT}/mont_blanc.json + ${FT}/sierra_nevada.json + ${FT}/sierra_nevada_fixed_size.json + ${FT}/debug_sierra_nevada_fixed_size_best_effort.json + ${FT}/sierra_nevada_fixed_size_loaned.json + ${FT}/sierra_nevada_loaned.json + ${FT}/white_mountain.json + ${FT}/white_mountain_fixed_size.json + ${FT}/debug_white_mountain_fixed_size_best_effort.json + ${FT}/white_mountain_fixed_size_loaned.json + ${FT}/white_mountain_loaned.json +) + +install(FILES + ${TEST_TOPOLOGY_FILES} + DESTINATION lib/${PROJECT_NAME}/${FT}) + +set(SP topology/single_process) + +set(TOPOLOGY_FILES_SINGLE_PROCESS + ${SP}/pub_sub_loaned_10b.json + ${SP}/pub_sub_loaned_100kb.json + ${SP}/pub_sub_loaned_1mb.json + ${SP}/pub_sub_loaned_4mb.json + + ${SP}/pub_sub_10b_ipc_on.json + ${SP}/pub_sub_100kb_ipc_on.json + ${SP}/pub_sub_1mb_ipc_on.json + ${SP}/pub_sub_4mb_ipc_on.json + + ${SP}/pub_sub_10b_ipc_off.json + ${SP}/pub_sub_100kb_ipc_off.json + ${SP}/pub_sub_1mb_ipc_off.json + ${SP}/pub_sub_4mb_ipc_off.json ) install(FILES - ${TOPOLOGY_FILES} - DESTINATION lib/${PROJECT_NAME}/topology) + ${TOPOLOGY_FILES_SINGLE_PROCESS} + DESTINATION lib/${PROJECT_NAME}/${SP}) + +set(MP topology/multi_process) + +set(TOPOLOGY_FILES_MULTI_PROCESS + ${MP}/pub_ipc_off_10b.json + ${MP}/pub_ipc_off_100kb.json + ${MP}/pub_ipc_off_1mb.json + ${MP}/pub_ipc_off_4mb.json + + ${MP}/sub_ipc_off_10b.json + ${MP}/sub_ipc_off_100kb.json + ${MP}/sub_ipc_off_1mb.json + ${MP}/sub_ipc_off_4mb.json + + ${MP}/pub_loaned_10b.json + ${MP}/pub_loaned_100kb.json + ${MP}/pub_loaned_1mb.json + ${MP}/pub_loaned_4mb.json + + ${MP}/sub_loaned_10b.json + ${MP}/sub_loaned_100kb.json + ${MP}/sub_loaned_1mb.json + ${MP}/sub_loaned_4mb.json +) + +install(FILES + ${TOPOLOGY_FILES_MULTI_PROCESS} + DESTINATION lib/${PROJECT_NAME}/${MP}) + +set(PROFILES + profiles/ignore_local_endpoints.xml + profiles/shared_memory_fastdds_config.xml) + +install(FILES + ${PROFILES} + DESTINATION lib/${PROJECT_NAME}/profiles) if(BUILD_TESTING) find_package(ament_lint_auto REQUIRED) diff --git a/irobot_benchmark/profiles/ignore_local_endpoints.xml b/irobot_benchmark/profiles/ignore_local_endpoints.xml new file mode 100644 index 00000000..a9361e2f --- /dev/null +++ b/irobot_benchmark/profiles/ignore_local_endpoints.xml @@ -0,0 +1,44 @@ + + + + OFF + + + + + UDP + UDPv4 + + + + + + UDP + + false + + + + + + + fastdds.match_local_endpoints + false + false + + + + + + + + + fastdds.match_local_endpoints + false + false + + + + + + \ No newline at end of file diff --git a/irobot_benchmark/profiles/shared_memory_fastdds_config.xml b/irobot_benchmark/profiles/shared_memory_fastdds_config.xml new file mode 100644 index 00000000..7dfd529f --- /dev/null +++ b/irobot_benchmark/profiles/shared_memory_fastdds_config.xml @@ -0,0 +1,26 @@ + + + + + + + + ASYNCHRONOUS + + + AUTOMATIC + + + PREALLOCATED_WITH_REALLOC + + + + + + AUTOMATIC + + + PREALLOCATED_WITH_REALLOC + + + \ No newline at end of file diff --git a/irobot_benchmark/topology/cedar.json b/irobot_benchmark/topology/full_topologies/cedar.json similarity index 100% rename from irobot_benchmark/topology/cedar.json rename to irobot_benchmark/topology/full_topologies/cedar.json diff --git a/irobot_benchmark/topology/debug_mont_blanc_best_effort.json b/irobot_benchmark/topology/full_topologies/debug_mont_blanc_best_effort.json similarity index 100% rename from irobot_benchmark/topology/debug_mont_blanc_best_effort.json rename to irobot_benchmark/topology/full_topologies/debug_mont_blanc_best_effort.json diff --git a/irobot_benchmark/topology/debug_mont_blanc_reliable.json b/irobot_benchmark/topology/full_topologies/debug_mont_blanc_reliable.json similarity index 100% rename from irobot_benchmark/topology/debug_mont_blanc_reliable.json rename to irobot_benchmark/topology/full_topologies/debug_mont_blanc_reliable.json diff --git a/irobot_benchmark/topology/debug_sierra_nevada_best_effort.json b/irobot_benchmark/topology/full_topologies/debug_sierra_nevada_best_effort.json similarity index 100% rename from irobot_benchmark/topology/debug_sierra_nevada_best_effort.json rename to irobot_benchmark/topology/full_topologies/debug_sierra_nevada_best_effort.json diff --git a/irobot_benchmark/topology/full_topologies/debug_sierra_nevada_fixed_size_best_effort.json b/irobot_benchmark/topology/full_topologies/debug_sierra_nevada_fixed_size_best_effort.json new file mode 100644 index 00000000..7ac0cd84 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/debug_sierra_nevada_fixed_size_best_effort.json @@ -0,0 +1,22 @@ +{ + "nodes": [ + { + "node_name": "debug_node", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32", "qos_reliability":"best_effort"}, + {"topic_name":"arkansas", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"congo", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"danube", "msg_type":"stamped_int64", "qos_reliability":"best_effort"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"lena", "msg_type":"stamped50b", "qos_reliability":"best_effort"}, + {"topic_name":"mekong", "msg_type":"stamped100b", "qos_reliability":"best_effort"}, + {"topic_name":"missouri", "msg_type":"stamped10kb", "qos_reliability":"best_effort"}, + {"topic_name":"nile", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"parana", "msg_type":"stamped3_float32", "qos_reliability":"best_effort"}, + {"topic_name":"salween", "msg_type":"stamped12_float32", "qos_reliability":"best_effort"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32", "qos_reliability":"best_effort"}, + {"topic_name":"volga", "msg_type":"stamped_int64", "qos_reliability":"best_effort"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/debug_sierra_nevada_reliable.json b/irobot_benchmark/topology/full_topologies/debug_sierra_nevada_reliable.json similarity index 100% rename from irobot_benchmark/topology/debug_sierra_nevada_reliable.json rename to irobot_benchmark/topology/full_topologies/debug_sierra_nevada_reliable.json diff --git a/irobot_benchmark/topology/full_topologies/debug_white_mountain_best_effort.json b/irobot_benchmark/topology/full_topologies/debug_white_mountain_best_effort.json new file mode 100644 index 00000000..464d7ec4 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/debug_white_mountain_best_effort.json @@ -0,0 +1,33 @@ +{ + "nodes": [ + { + "node_name": "debug_node", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32", "qos_reliability":"best_effort"}, + {"topic_name":"arkansas", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"brazos", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"chenab", "msg_type":"stamped1kb", "qos_reliability":"best_effort"}, + {"topic_name":"colorado", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"columbia", "msg_type":"stamped600kb", "qos_reliability":"best_effort"}, + {"topic_name":"congo", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"danube", "msg_type":"stamped_int64", "qos_reliability":"best_effort"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"godavari", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"lena", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"loire", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"mekong", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"missouri", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"murray", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"nile", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"ohio", "msg_type":"stamped100b", "qos_reliability":"best_effort"}, + {"topic_name":"parana", "msg_type":"stamped3_float32", "qos_reliability":"best_effort"}, + {"topic_name":"salween", "msg_type":"stamped12_float32", "qos_reliability":"best_effort"}, + {"topic_name":"tagus", "msg_type":"stamped_vector", "qos_reliability":"best_effort"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32", "qos_reliability":"best_effort"}, + {"topic_name":"volga", "msg_type":"stamped_int64", "qos_reliability":"best_effort"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/full_topologies/debug_white_mountain_fixed_size_best_effort.json b/irobot_benchmark/topology/full_topologies/debug_white_mountain_fixed_size_best_effort.json new file mode 100644 index 00000000..9c4749d1 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/debug_white_mountain_fixed_size_best_effort.json @@ -0,0 +1,32 @@ +{ + "nodes": [ + { + "node_name": "debug_node", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32", "qos_reliability":"best_effort"}, + {"topic_name":"arkansas", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"brazos", "msg_type":"stamped25kb", "qos_reliability":"best_effort"}, + {"topic_name":"chenab", "msg_type":"stamped1kb", "qos_reliability":"best_effort"}, + {"topic_name":"colorado", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"columbia", "msg_type":"stamped600kb", "qos_reliability":"best_effort"}, + {"topic_name":"congo", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"danube", "msg_type":"stamped_int64", "qos_reliability":"best_effort"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"godavari", "msg_type":"stamped5kb", "qos_reliability":"best_effort"}, + {"topic_name":"lena", "msg_type":"stamped50b", "qos_reliability":"best_effort"}, + {"topic_name":"loire", "msg_type":"stamped1kb", "qos_reliability":"best_effort"}, + {"topic_name":"mekong", "msg_type":"stamped100b", "qos_reliability":"best_effort"}, + {"topic_name":"missouri", "msg_type":"stamped10kb", "qos_reliability":"best_effort"}, + {"topic_name":"murray", "msg_type":"stamped100b", "qos_reliability":"best_effort"}, + {"topic_name":"nile", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"}, + {"topic_name":"ohio", "msg_type":"stamped100b", "qos_reliability":"best_effort"}, + {"topic_name":"parana", "msg_type":"stamped3_float32", "qos_reliability":"best_effort"}, + {"topic_name":"salween", "msg_type":"stamped12_float32", "qos_reliability":"best_effort"}, + {"topic_name":"tagus", "msg_type":"stamped50kb", "qos_reliability":"best_effort"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32", "qos_reliability":"best_effort"}, + {"topic_name":"volga", "msg_type":"stamped_int64", "qos_reliability":"best_effort"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32", "qos_reliability":"best_effort"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/mont_blanc.json b/irobot_benchmark/topology/full_topologies/mont_blanc.json similarity index 100% rename from irobot_benchmark/topology/mont_blanc.json rename to irobot_benchmark/topology/full_topologies/mont_blanc.json diff --git a/irobot_benchmark/topology/mont_blanc.pdf b/irobot_benchmark/topology/full_topologies/mont_blanc.pdf similarity index 100% rename from irobot_benchmark/topology/mont_blanc.pdf rename to irobot_benchmark/topology/full_topologies/mont_blanc.pdf diff --git a/irobot_benchmark/topology/sierra_nevada.json b/irobot_benchmark/topology/full_topologies/sierra_nevada.json similarity index 100% rename from irobot_benchmark/topology/sierra_nevada.json rename to irobot_benchmark/topology/full_topologies/sierra_nevada.json diff --git a/irobot_benchmark/topology/sierra_nevada.pdf b/irobot_benchmark/topology/full_topologies/sierra_nevada.pdf similarity index 100% rename from irobot_benchmark/topology/sierra_nevada.pdf rename to irobot_benchmark/topology/full_topologies/sierra_nevada.pdf diff --git a/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size.json b/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size.json new file mode 100644 index 00000000..b96415a5 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size.json @@ -0,0 +1,109 @@ +{ + "nodes": [ + { + "node_name": "montreal", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10, "msg_pass_by":"shared_ptr"}, + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"shared_ptr"}, + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"shared_ptr"}, + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped10kb", "period_ms": 100, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped10kb"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped100b", "period_ms": 500, "msg_pass_by":"shared_ptr"}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped50b", "period_ms": 100, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped50b"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"shared_ptr"} + ] + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size_loaned.json b/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size_loaned.json new file mode 100644 index 00000000..1e7783e7 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/sierra_nevada_fixed_size_loaned.json @@ -0,0 +1,109 @@ +{ + "nodes": [ + { + "node_name": "montreal", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped10kb", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped10kb"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped100b", "period_ms": 500, "msg_pass_by":"loaned_msg"}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped50b", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped50b"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/full_topologies/sierra_nevada_loaned.json b/irobot_benchmark/topology/full_topologies/sierra_nevada_loaned.json new file mode 100644 index 00000000..dc84a753 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/sierra_nevada_loaned.json @@ -0,0 +1,109 @@ +{ + "nodes": [ + { + "node_name": "montreal", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"}, + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped_vector", "msg_size": 10000, "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped_vector"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped_vector", "msg_size": 100, "period_ms": 500, "msg_pass_by":"loaned_msg"}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped_vector", "msg_size": 50, "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ] + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/white_mountain.json b/irobot_benchmark/topology/full_topologies/white_mountain.json similarity index 100% rename from irobot_benchmark/topology/white_mountain.json rename to irobot_benchmark/topology/full_topologies/white_mountain.json diff --git a/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size.json b/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size.json new file mode 100644 index 00000000..8bb248b0 --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size.json @@ -0,0 +1,225 @@ +{ + "nodes": [ + { + "node_name": "cordoba", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10} + ], + "executor_id":1 + }, + + { + "node_name": "freeport", + "publishers": [ + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10} + ], + "executor_id":2 + }, + + { + "node_name": "medellin", + "publishers": [ + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10} + ], + "executor_id":3 + }, + + { + "node_name": "portsmouth", + "publishers": [ + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10} + ], + "executor_id":4 + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10} + ], + "executor_id":5 + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10} + ], + "executor_id":6 + }, + + { + "node_name": "delhi", + "publishers": [ + {"topic_name": "columbia", "msg_type": "stamped600kb", "freq_hz": 15} + ], + "executor_id":7 + }, + + { + "node_name": "taipei", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"} + ], + "publishers": [ + {"topic_name": "colorado", "msg_type": "stamped4_int32", "period_ms": 200} + ], + "executor_id":8 + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name":"colorado", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100}, + {"topic_name": "godavari", "msg_type": "stamped5kb", "period_ms": 200} + ], + "executor_id":9 + }, + + { + "node_name": "tripoli", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"} + ], + "publishers": [ + {"topic_name": "loire", "msg_type": "stamped1kb", "period_ms": 200} + ], + "executor_id":10 + }, + + { + "node_name": "kingston", + "publishers": [ + {"topic_name": "yamuna", "msg_type": "stamped4_int32", "period_ms": 100} + ], + "executor_id":11 + }, + + { + "node_name": "hebron", + "publishers": [ + {"topic_name": "chenab", "msg_type": "stamped1kb", "period_ms": 25} + ], + "executor_id":12 + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped1kb"}, + {"topic_name": "chenab", "msg_type": "stamped1kb"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped10kb", "period_ms": 100}, + {"topic_name": "tagus", "msg_type": "stamped50kb", "period_ms": 100}, + {"topic_name": "brazos", "msg_type": "stamped25kb", "period_ms": 100} + ], + "executor_id":13 + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped10kb"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped1kb"}, + {"topic_name": "tagus", "msg_type": "stamped50kb"}, + {"topic_name": "brazos", "msg_type": "stamped25kb"}, + {"topic_name": "ohio", "msg_type": "stamped100b"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped100b", "period_ms": 500}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100} + ], + "executor_id":14 + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped50b", "period_ms": 100} + ], + "executor_id":15 + }, + + { + "node_name": "monaco", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "ohio", "msg_type": "stamped100b", "period_ms": 200} + ], + "executor_id":16 + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped50b"}, + {"topic_name":"murray", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500} + ], + "executor_id":17 + }, + + { + "node_name": "rotterdam", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "murray", "msg_type": "stamped100b", "period_ms": 500} + ], + "executor_id":18 + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name": "tagus", "msg_type": "stamped50kb"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100} + ], + "executor_id":19 + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ], + "executor_id":20 + } + ] +} diff --git a/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size_loaned.json b/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size_loaned.json new file mode 100644 index 00000000..72ca774d --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/white_mountain_fixed_size_loaned.json @@ -0,0 +1,225 @@ +{ + "nodes": [ + { + "node_name": "cordoba", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":1 + }, + + { + "node_name": "freeport", + "publishers": [ + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":2 + }, + + { + "node_name": "medellin", + "publishers": [ + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":3 + }, + + { + "node_name": "portsmouth", + "publishers": [ + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":4 + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":5 + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":6 + }, + + { + "node_name": "delhi", + "publishers": [ + {"topic_name": "columbia", "msg_type": "stamped600kb", "freq_hz": 15} + ], + "executor_id":7 + }, + + { + "node_name": "taipei", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"} + ], + "publishers": [ + {"topic_name": "colorado", "msg_type": "stamped4_int32", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":8 + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name":"colorado", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "godavari", "msg_type": "stamped5kb", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":9 + }, + + { + "node_name": "tripoli", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"} + ], + "publishers": [ + {"topic_name": "loire", "msg_type": "stamped1kb", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":10 + }, + + { + "node_name": "kingston", + "publishers": [ + {"topic_name": "yamuna", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":11 + }, + + { + "node_name": "hebron", + "publishers": [ + {"topic_name": "chenab", "msg_type": "stamped1kb", "period_ms": 25, "msg_pass_by":"loaned_msg"} + ], + "executor_id":12 + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped1kb"}, + {"topic_name": "chenab", "msg_type": "stamped1kb"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped10kb", "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "tagus", "msg_type": "stamped50kb", "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "brazos", "msg_type": "stamped25kb", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":13 + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped10kb"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped5kb"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped1kb"}, + {"topic_name": "tagus", "msg_type": "stamped50kb"}, + {"topic_name": "brazos", "msg_type": "stamped25kb"}, + {"topic_name": "ohio", "msg_type": "stamped100b"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped100b", "period_ms": 500, "msg_pass_by":"loaned_msg"}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":14 + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped50b", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":15 + }, + + { + "node_name": "monaco", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "ohio", "msg_type": "stamped100b", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":16 + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped50b"}, + {"topic_name":"murray", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500, "msg_pass_by":"loaned_msg"} + ], + "executor_id":17 + }, + + { + "node_name": "rotterdam", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped100b"} + ], + "publishers": [ + {"topic_name": "murray", "msg_type": "stamped100b", "period_ms": 500, "msg_pass_by":"loaned_msg"} + ], + "executor_id":18 + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name": "tagus", "msg_type": "stamped50kb"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":19 + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ], + "executor_id":20 + } + ] +} diff --git a/irobot_benchmark/topology/full_topologies/white_mountain_loaned.json b/irobot_benchmark/topology/full_topologies/white_mountain_loaned.json new file mode 100644 index 00000000..f69a010b --- /dev/null +++ b/irobot_benchmark/topology/full_topologies/white_mountain_loaned.json @@ -0,0 +1,225 @@ +{ + "nodes": [ + { + "node_name": "cordoba", + "publishers": [ + {"topic_name": "amazon", "msg_type": "stamped9_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":1 + }, + + { + "node_name": "freeport", + "publishers": [ + {"topic_name": "ganges", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":2 + }, + + { + "node_name": "medellin", + "publishers": [ + {"topic_name": "nile", "msg_type": "stamped4_int32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":3 + }, + + { + "node_name": "portsmouth", + "publishers": [ + {"topic_name": "danube", "msg_type": "stamped_int64", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":4 + }, + + { + "node_name": "lyon", + "subscribers":[ + {"topic_name":"amazon", "msg_type":"stamped9_float32"} + ], + "publishers": [ + {"topic_name": "tigris", "msg_type": "stamped4_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":5 + }, + + { + "node_name": "hamburg", + "subscribers":[ + {"topic_name":"nile", "msg_type":"stamped4_int32"}, + {"topic_name":"tigris", "msg_type":"stamped4_float32"}, + {"topic_name":"ganges", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"} + ], + "publishers": [ + {"topic_name": "parana", "msg_type": "stamped3_float32", "period_ms": 10, "msg_pass_by":"loaned_msg"} + ], + "executor_id":6 + }, + + { + "node_name": "delhi", + "publishers": [ + {"topic_name": "columbia", "msg_type": "stamped600kb", "freq_hz": 15} + ], + "executor_id":7 + }, + + { + "node_name": "taipei", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"} + ], + "publishers": [ + {"topic_name": "colorado", "msg_type": "stamped4_int32", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":8 + }, + + { + "node_name": "osaka", + "subscribers":[ + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name":"colorado", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "salween", "msg_type": "stamped12_float32", "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "godavari", "msg_type": "stamped_vector", "msg_size": 5000, "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":9 + }, + + { + "node_name": "tripoli", + "subscribers":[ + {"topic_name":"columbia", "msg_type":"stamped600kb"}, + {"topic_name":"godavari", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "loire", "msg_type": "stamped_vector", "msg_size": 1000, "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":10 + }, + + { + "node_name": "kingston", + "publishers": [ + {"topic_name": "yamuna", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":11 + }, + + { + "node_name": "hebron", + "publishers": [ + {"topic_name": "chenab", "msg_type": "stamped1kb", "period_ms": 25, "msg_pass_by":"loaned_msg"} + ], + "executor_id":12 + }, + + { + "node_name": "mandalay", + "subscribers":[ + {"topic_name":"salween", "msg_type":"stamped12_float32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped_vector"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped_vector"}, + {"topic_name": "chenab", "msg_type": "stamped1kb"} + ], + "publishers": [ + {"topic_name": "missouri", "msg_type": "stamped_vector", "msg_size": 10000, "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "tagus", "msg_type": "stamped_vector", "msg_size": 50000, "period_ms": 100, "msg_pass_by":"loaned_msg"}, + {"topic_name": "brazos", "msg_type": "stamped_vector", "msg_size": 25000, "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":13 + }, + + { + "node_name": "ponce", + "subscribers":[ + {"topic_name":"missouri", "msg_type":"stamped_vector"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"volga", "msg_type":"stamped_int64"}, + {"topic_name":"godavari", "msg_type":"stamped_vector"}, + {"topic_name":"yamuna", "msg_type":"stamped4_int32"}, + {"topic_name": "loire", "msg_type": "stamped_vector"}, + {"topic_name": "tagus", "msg_type": "stamped_vector"}, + {"topic_name": "brazos", "msg_type": "stamped_vector"}, + {"topic_name": "ohio", "msg_type": "stamped100b"} + ], + "publishers": [ + {"topic_name": "mekong", "msg_type": "stamped_vector", "msg_size": 100, "period_ms": 500, "msg_pass_by":"loaned_msg"}, + {"topic_name": "congo", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":14 + }, + + { + "node_name": "barcelona", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "lena", "msg_type": "stamped_vector", "msg_size": 50, "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":15 + }, + + { + "node_name": "monaco", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"} + ], + "publishers": [ + {"topic_name": "ohio", "msg_type": "stamped100b", "period_ms": 200, "msg_pass_by":"loaned_msg"} + ], + "executor_id":16 + }, + + { + "node_name": "georgetown", + "subscribers":[ + {"topic_name":"lena", "msg_type":"stamped_vector"}, + {"topic_name":"murray", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "volga", "msg_type": "stamped_int64", "period_ms": 500, "msg_pass_by":"loaned_msg"} + ], + "executor_id":17 + }, + + { + "node_name": "rotterdam", + "subscribers":[ + {"topic_name":"mekong", "msg_type":"stamped_vector"} + ], + "publishers": [ + {"topic_name": "murray", "msg_type": "stamped_vector", "msg_size": 100, "period_ms": 500, "msg_pass_by":"loaned_msg"} + ], + "executor_id":18 + }, + + { + "node_name": "geneva", + "subscribers":[ + {"topic_name":"congo", "msg_type":"stamped4_int32"}, + {"topic_name":"danube", "msg_type":"stamped_int64"}, + {"topic_name":"parana", "msg_type":"stamped3_float32"}, + {"topic_name": "tagus", "msg_type": "stamped_vector"} + ], + "publishers": [ + {"topic_name": "arkansas", "msg_type": "stamped4_int32", "period_ms": 100, "msg_pass_by":"loaned_msg"} + ], + "executor_id":19 + }, + + { + "node_name": "arequipa", + "subscribers":[ + {"topic_name":"arkansas", "msg_type":"stamped4_int32"} + ], + "executor_id":20 + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_ipc_off_100kb.json b/irobot_benchmark/topology/multi_process/pub_ipc_off_100kb.json new file mode 100755 index 00000000..98ba11cd --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_ipc_off_100kb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped100kb", + "period_ms": 100, + "msg_pass_by":"shared_ptr" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_ipc_off_10b.json b/irobot_benchmark/topology/multi_process/pub_ipc_off_10b.json new file mode 100755 index 00000000..ba766749 --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_ipc_off_10b.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped10b", + "period_ms": 1, + "msg_pass_by":"shared_ptr" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_ipc_off_1mb.json b/irobot_benchmark/topology/multi_process/pub_ipc_off_1mb.json new file mode 100755 index 00000000..103c830b --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_ipc_off_1mb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped1mb", + "period_ms": 50, + "msg_pass_by":"shared_ptr" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_ipc_off_4mb.json b/irobot_benchmark/topology/multi_process/pub_ipc_off_4mb.json new file mode 100755 index 00000000..fda15bcf --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_ipc_off_4mb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped4mb", + "period_ms": 100, + "msg_pass_by":"shared_ptr" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_loaned_100kb.json b/irobot_benchmark/topology/multi_process/pub_loaned_100kb.json new file mode 100755 index 00000000..390ba18c --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_loaned_100kb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped100kb", + "period_ms": 100, + "msg_pass_by":"loaned_msg" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_loaned_10b.json b/irobot_benchmark/topology/multi_process/pub_loaned_10b.json new file mode 100755 index 00000000..b2550f90 --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_loaned_10b.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped10b", + "period_ms": 1, + "msg_pass_by":"loaned_msg" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_loaned_1mb.json b/irobot_benchmark/topology/multi_process/pub_loaned_1mb.json new file mode 100755 index 00000000..b52df533 --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_loaned_1mb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped1mb", + "period_ms": 50, + "msg_pass_by":"loaned_msg" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/pub_loaned_4mb.json b/irobot_benchmark/topology/multi_process/pub_loaned_4mb.json new file mode 100755 index 00000000..85172d5b --- /dev/null +++ b/irobot_benchmark/topology/multi_process/pub_loaned_4mb.json @@ -0,0 +1,15 @@ +{ + "nodes": [ + { + "node_name": "pub_node", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped4mb", + "period_ms": 100, + "msg_pass_by":"loaned_msg" + } + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_ipc_off_100kb.json b/irobot_benchmark/topology/multi_process/sub_ipc_off_100kb.json new file mode 100755 index 00000000..f8db1aea --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_ipc_off_100kb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped100kb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_ipc_off_10b.json b/irobot_benchmark/topology/multi_process/sub_ipc_off_10b.json new file mode 100755 index 00000000..4148c2fe --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_ipc_off_10b.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped10b"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_ipc_off_1mb.json b/irobot_benchmark/topology/multi_process/sub_ipc_off_1mb.json new file mode 100755 index 00000000..0a2d68e6 --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_ipc_off_1mb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped1mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_ipc_off_4mb.json b/irobot_benchmark/topology/multi_process/sub_ipc_off_4mb.json new file mode 100755 index 00000000..2498e8df --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_ipc_off_4mb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped4mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_loaned_100kb.json b/irobot_benchmark/topology/multi_process/sub_loaned_100kb.json new file mode 100755 index 00000000..f8db1aea --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_loaned_100kb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped100kb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_loaned_10b.json b/irobot_benchmark/topology/multi_process/sub_loaned_10b.json new file mode 100755 index 00000000..4148c2fe --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_loaned_10b.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped10b"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_loaned_1mb.json b/irobot_benchmark/topology/multi_process/sub_loaned_1mb.json new file mode 100755 index 00000000..0a2d68e6 --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_loaned_1mb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped1mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/multi_process/sub_loaned_4mb.json b/irobot_benchmark/topology/multi_process/sub_loaned_4mb.json new file mode 100755 index 00000000..2498e8df --- /dev/null +++ b/irobot_benchmark/topology/multi_process/sub_loaned_4mb.json @@ -0,0 +1,10 @@ +{ + "nodes": [ + { + "node_name": "sub_node", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped4mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_off.json b/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_off.json new file mode 100644 index 00000000..7c16f8c6 --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_off.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped100kb", + "period_ms": 100, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped100kb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_on.json b/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_on.json new file mode 100644 index 00000000..7c16f8c6 --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_100kb_ipc_on.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped100kb", + "period_ms": 100, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped100kb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_off.json b/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_off.json new file mode 100644 index 00000000..db02e8db --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_off.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped10b", + "period_ms": 1, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped10b"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_on.json b/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_on.json new file mode 100644 index 00000000..db02e8db --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_10b_ipc_on.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped10b", + "period_ms": 1, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped10b"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_off.json b/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_off.json new file mode 100644 index 00000000..7e1ca44b --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_off.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped1mb", + "period_ms": 50, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped1mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_on.json b/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_on.json new file mode 100644 index 00000000..7e1ca44b --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_1mb_ipc_on.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped1mb", + "period_ms": 50, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped1mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_off.json b/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_off.json new file mode 100644 index 00000000..62764a4d --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_off.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped4mb", + "period_ms": 100, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped4mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_on.json b/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_on.json new file mode 100644 index 00000000..62764a4d --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_4mb_ipc_on.json @@ -0,0 +1,21 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped4mb", + "period_ms": 100, + "msg_pass_by":"unique_ptr"} + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped4mb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_loaned_100kb.json b/irobot_benchmark/topology/single_process/pub_sub_loaned_100kb.json new file mode 100644 index 00000000..275558ad --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_loaned_100kb.json @@ -0,0 +1,22 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped100kb", + "period_ms": 100, + "msg_pass_by":"loaned_msg" + } + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped100kb"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_loaned_10b.json b/irobot_benchmark/topology/single_process/pub_sub_loaned_10b.json new file mode 100644 index 00000000..e4a8c217 --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_loaned_10b.json @@ -0,0 +1,22 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped10b", + "period_ms": 1, + "msg_pass_by":"loaned_msg" + } + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped10b"} + ] + } + ] +} diff --git a/irobot_benchmark/topology/single_process/pub_sub_loaned_1mb.json b/irobot_benchmark/topology/single_process/pub_sub_loaned_1mb.json new file mode 100755 index 00000000..e399a140 --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_loaned_1mb.json @@ -0,0 +1,23 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped1mb", + "period_ms": 50, + "msg_pass_by":"loaned_msg" + } + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped1mb"} + ] + } + ] +} + diff --git a/irobot_benchmark/topology/single_process/pub_sub_loaned_4mb.json b/irobot_benchmark/topology/single_process/pub_sub_loaned_4mb.json new file mode 100644 index 00000000..a85aa4ec --- /dev/null +++ b/irobot_benchmark/topology/single_process/pub_sub_loaned_4mb.json @@ -0,0 +1,22 @@ +{ + "nodes": [ + { + "node_name": "pub_node_sp", + "publishers": [ + { + "topic_name": "test", + "msg_type": "stamped4mb", + "period_ms": 100, + "msg_pass_by":"loaned_msg" + } + + ] + }, + { + "node_name": "sub_node_sp", + "subscribers":[ + {"topic_name":"test", "msg_type":"stamped4mb"} + ] + } + ] +} diff --git a/irobot_interfaces_plugin/CMakeLists.txt b/irobot_interfaces_plugin/CMakeLists.txt index 68786e97..29390342 100644 --- a/irobot_interfaces_plugin/CMakeLists.txt +++ b/irobot_interfaces_plugin/CMakeLists.txt @@ -26,10 +26,13 @@ set( CUSTOM_MSGS "msg/Stamped9Float32.msg" "msg/Stamped12Float32.msg" "msg/Stamped10b.msg" + "msg/Stamped50b.msg" "msg/Stamped100b.msg" "msg/Stamped250b.msg" "msg/Stamped1kb.msg" + "msg/Stamped5kb.msg" "msg/Stamped10kb.msg" + "msg/Stamped25kb.msg" "msg/Stamped50kb.msg" "msg/Stamped100kb.msg" "msg/Stamped250kb.msg" diff --git a/irobot_interfaces_plugin/msg/Stamped25kb.msg b/irobot_interfaces_plugin/msg/Stamped25kb.msg new file mode 100644 index 00000000..dd6fbff4 --- /dev/null +++ b/irobot_interfaces_plugin/msg/Stamped25kb.msg @@ -0,0 +1,2 @@ +performance_test_msgs/PerformanceHeader header +byte[25000] data \ No newline at end of file diff --git a/irobot_interfaces_plugin/msg/Stamped50b.msg b/irobot_interfaces_plugin/msg/Stamped50b.msg new file mode 100644 index 00000000..b0acd5b8 --- /dev/null +++ b/irobot_interfaces_plugin/msg/Stamped50b.msg @@ -0,0 +1,2 @@ +performance_test_msgs/PerformanceHeader header +byte[50] data \ No newline at end of file diff --git a/irobot_interfaces_plugin/msg/Stamped5kb.msg b/irobot_interfaces_plugin/msg/Stamped5kb.msg new file mode 100644 index 00000000..0ddd1c0b --- /dev/null +++ b/irobot_interfaces_plugin/msg/Stamped5kb.msg @@ -0,0 +1,2 @@ +performance_test_msgs/PerformanceHeader header +byte[5000] data \ No newline at end of file