Coder Social home page Coder Social logo

zhenshenglee / performance_test Goto Github PK

View Code? Open in Web Editor NEW
25.0 4.0 4.0 8.73 MB

Apex.AI performance_test for eCAL, FastDDS and Protobuf.

Home Page: https://github.com/ZhenshengLee/ros2_jetson_benchmarks

License: Apache License 2.0

CMake 14.31% Shell 0.61% Python 22.28% TeX 0.80% Jupyter Notebook 1.81% C++ 59.79% C 0.17% HTML 0.23%
apex-performance-plotter apex performance ros2 ecal

performance_test's Issues

请问分布式系统的Continental eCAL with protobuf 该怎么使用

我在局域网中的两台电脑上部署了代码,怎么才能测试UDP模式下的传输性能?

使用以下指令 只能在本地模式运行,两台电脑无法测试。

t1

./install/performance_test/lib/performance_test/perf_test -c ECAL_PROTO --msg Array1k -p 0 -s 1

t2

./install/performance_test/lib/performance_test/perf_test -c ECAL_PROTO --msg Array1k -p 1 -s 0

[communication] unbounded message size doesn't work

reproduce process:

  1. test cmd > perf_test -c FastRTPS -m UnboundedSequence --unbounded-msg-size 1024000 -p 1 -s 0
  2. check message size in the msg serialization. performance_test::msg::FastDDSGen::UnboundedSequence::serialize @ fast_rtps/gen/fast_rtps/UnboundedSequence.cxx
  3. The m_unbounded_sequence.size() is always zero.

请确认上述问题(在fastrtps通信方式下,unbounded-msg-size参数没有设置到unbound message消息体中)是否已在1.3.7版本之后的版本中修复,谢谢

[BUG] protobuf layer outputs deserialization error `missing required fields` with eCAL.

steps

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

actual

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.

comment

protobuf issue?

aditional info

libprotobuf-dev:amd64                                       3.6.1.3-2ubuntu5

[BUG] data timestamp consistency violated with eCAL.

steps

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

actual

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)

comment

qos function of eCAL is abnormal.

EDIT:

aditional info

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.

[BUG] [DATA_WRITER Error] Data sharing cannot be used with unbounded data types with FastDDS.

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.