ChannelThreadGroup design comments for CSPi DBL5 - SpiderRock/SRDataFeed GitHub Wiki

It is possible to use a single ChannelThreadGroup and consume all OptionNbboQuoteN UDP channels out of a single DBL port. The success of such a scheme would be highly contingent on the efficiency of the callbacks, would be fragile under bursts, and wouldn’t result in the best latency profile. On the opposite extreme would be a configuration with one OptionNbboQuoteN channel per DBL port, per process, per NUMA node. There are many functional configurations in between.

Some guidelines that would improve the latency are:

  • The fewer channels assigned to a port of a DBL card the better,
  • The fewer devices open on a port of a DBL card the better. Each ChannelThreadGroup owns a device.
  • Keep to no more than 8 devices on each DBL card