zhenshenglee / performance_test Goto Github PK
View Code? Open in Web Editor NEWApex.AI performance_test for eCAL, FastDDS and Protobuf.
Home Page: https://github.com/ZhenshengLee/ros2_jetson_benchmarks
License: Apache License 2.0
Apex.AI performance_test for eCAL, FastDDS and Protobuf.
Home Page: https://github.com/ZhenshengLee/ros2_jetson_benchmarks
License: Apache License 2.0
@ZhenshengLee awesome work! Would be great if you could make an MR / PR back to performance_test
so that others can also test eCAL
and fastdds
like you did here.
Would this be something you or @rex-schilasky would consider?
Also, it appears you had some issues setting up cyclonedds
zero copy (specifically configuring the roudi). Would be happy to help you out here if needed.
我在局域网中的两台电脑上部署了代码,怎么才能测试UDP模式下的传输性能?
使用以下指令 只能在本地模式运行,两台电脑无法测试。
./install/performance_test/lib/performance_test/perf_test -c ECAL_PROTO --msg Array1k -p 0 -s 1
./install/performance_test/lib/performance_test/perf_test -c ECAL_PROTO --msg Array1k -p 1 -s 0
reproduce process:
请确认上述问题(在fastrtps通信方式下,unbounded-msg-size参数没有设置到unbound message消息体中)是否已在1.3.7版本之后的版本中修复,谢谢
mkdir experiment
# t1
./install/performance_test/lib/performance_test/perf_test -c ECAL --msg Array1k -p 0 -s 1
# t2
./install/performance_test/lib/performance_test/perf_test -c ECAL --msg Array1k -p 1 -s 0
EDIT: the behavior happens sometimes but not periodically.
[libprotobuf ERROR google/protobuf/message_lite.cc:121] Can't parse message of type "performance_test.msg.EcalGen.Array1k" because it is missing required fields: msg_array_size, time, id.
protobuf issue?
libprotobuf-dev:amd64 3.6.1.3-2ubuntu5
mkdir experiment
# t1
./install/performance_test/lib/performance_test/perf_test -c ECAL --msg Array1k -p 0 -s 1
# t2
./install/performance_test/lib/performance_test/perf_test -c ECAL --msg Array1k -p 1 -s 0
terminate called after throwing an instance of 'std::runtime_error'
what(): Data consistency violated. Received sample with not strictly older timestamp. Time diff: -5739 Data Time: 435507319158649
Aborted (core dumped)
qos function of eCAL is abnormal.
EDIT:
Simply comment the qos settings for CSubscriber and CPublisher will clear NOT CLEAR this fault.
// m_publisher->SetQOS(writerQos);
// m_subscriber->SetQOS(ReaderQos);
m_publisher->ShmSetBufferCount(1);
will clear this fault
But this issue needs to be fixed.
zs@zs-3630:~/zs_ws/ga_ros2/colcon/install/performance_test/lib/performance_test$ ./perf_test -c FastDDS --msg Struct16 -p 1 -s 0 -r 1000 --zero-copy
Experiment id: 9332eda8-7c7d-4180-aa39-95b80aca6a70
Performance Test Version: fba0fe4-dirty
Logfile name: results_test_topic_11-05-2022_17-08-14.csv
Communication mean: FASTDDS
RMW Implementation: rmw_cyclonedds_cpp
DDS domain id: 0
QOS: Reliability: BEST_EFFORT Durability: VOLATILE History kind: KEEP_ALL History depth: 1000 Sync. pub/sub: 0
Publishing rate: 1000
Topic name: test_topic
Msg name: Struct16
Maximum runtime (sec): 0
Number of publishers: 1
Number of subscribers: 0
Memory check enabled: 0
With security: 0
Zero copy transfer: 1
Unbounded message size: 0
Roundtrip Mode: NONE
Ignore seconds from beginning: 0
2022-05-11 17:08:14.751 [DATA_WRITER Error] Data sharing cannot be used with unbounded data types -> Function check_datasharing_compatible
Segmentation fault (core dumped)
Needs some considerations. Using c api? zero-copy?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.