neuron icon indicating copy to clipboard operation
neuron copied to clipboard

event_linux consumes significant system resources when a large number of nodes and groups are present.

Open Jimmy-Wen opened this issue 3 months ago • 1 comments

  1. The current event_linux implementation requires each business node to call neu_event_new separately to create an epoll instance. If the system has dozens or hundreds of nodes, there will be a large number of epoll file descriptors (fd) in the system, which will obviously consume a lot of system resources.
  2. Currently, at least 3 timerfds are created for each group of every business node. If the system has dozens of nodes and hundreds of groups, hundreds of timerfds will appear. This, firstly, consumes the process's file descriptor resources, and secondly, the frequent kernel/user-mode switching of timerfds is quite CPU-intensive.

This issue was automatically translated from Chinese.

Jimmy-Wen avatar Sep 13 '25 08:09 Jimmy-Wen

This is an issue existing in the current architecture. When the number of connected devices is large, it will consume a considerable amount of system FD. In our subsequent versions, we will implement some optimizations to reduce the usage of FD.

fengzeroz avatar Sep 15 '25 06:09 fengzeroz