Menu

#161 Increase performance

2.0.1.0
closed
None
2019-08-30
2017-06-28
No

The trdp implementation works fine for a small number of publishers and subscribers. If the system has to deal with more than 100 publishers and subscribers the performance decreases.

Some problematic functions are:

  1. trdp_pdCheckPending
  2. trdp_pdHandleTimeOuts
  3. trdp_queueFindSubAddr

The functions must iterate through all elements, e.g. in trdp_queueFindSubAddr a linear search is used.
In that case it would be better to use several "buckets" and a multiplicate hash function to determine the bucket. Within the bucket a linear search can be perfomed.

The trdp_pdHandleTimeOuts could be perhaps improved by sorting the elements by the timeout value to avoid going through all elements in the list.

Discussion

  • Bernd Löhr

    Bernd Löhr - 2017-11-10
    • status: open --> accepted
    • assigned_to: Bernd Löhr
     
  • Bernd Löhr

    Bernd Löhr - 2018-08-07
    • status: accepted --> open
    • Milestone: 1.4.0.0 --> 2.0.0.0
     
  • Bernd Löhr

    Bernd Löhr - 2018-08-07

    Postponed for version 2

     
  • Bernd Löhr

    Bernd Löhr - 2019-06-17
    • Status: open --> accepted
     
  • Bernd Löhr

    Bernd Löhr - 2019-08-15
    • status: accepted --> pending
     
  • Armin-Hagen Weiss

    • status: pending --> closed
     
  • Armin-Hagen Weiss

    • Milestone: 2.0.0.0 --> 2.0.0.2
     

Log in to post a comment.

MongoDB Logo MongoDB