DDS and ROS - A Powerful Combination for Robotics

Поділитися
Вставка
  • Опубліковано 8 вер 2024

КОМЕНТАРІ • 4

  • @HOOHA333
    @HOOHA333 7 місяців тому

    @15:35 latency budget is discussed. Where exactly it is defined? Does it change dynamically ?

    • @zettascaletech
      @zettascaletech  7 місяців тому +1

      The latency budget is defined as part of the OMG spec under §2.2.3.8: www.omg.org/spec/DDS/1.4/PDF.
      To paraphrase: this policy serves as a way for an application to communicate the "urgency" of data communication to the middleware. The specified duration, when non-zero, allows the DDS implementer to optimize how to transmit the data to fit within the latency bounds. However, it's important to note that this policy is a hint, and there is no prescribed method for the service to utilize this information.
      In terms of Cyclone we batch the messages to be written on another thread and then send out the batch of messages once the latency budget has been expended. It's not a dynamically changing value. We have some documentation describing how we choose to make use of the latency budget provided by the user here: github.com/eclipse-cyclonedds/cyclonedds/blob/1c9bc19f94c6dd6c62b573fed335a0663cb84d9f/docs/dev/async_write.md
      And we have some documentation on setting the latency budget in a QoS object: cyclonedds.io/docs/cyclonedds/latest/api/qos.html#group__qos__getters_1ga7f50e88c3213379b9fe31a288845fcae
      If you have any other questions, feel free to drop by our GitHub or our Discord channel: discord.gg/UZB5b5h7KT

  • @larrystavern
    @larrystavern Рік тому

    Awesome work