Skip to content

High CPU Usage: Conduit binary/wrapper ignoring resource limits #40

@ab-a

Description

@ab-a

Description

I am experiencing unexpectedly high CPU usage on my Conduit instance. Despite setting a resource limit of 0.2 cores per container, the host system reports a conduit process (running via bash) consuming nearly 100% of a core.

Environment

  • OS: Ubuntu 24.04.3
  • Conduit Version: Latest 1.3
  • Deployment: Docker 28.1.1
  • System Specs: 4 CPU cores, ~24GB RAM

Observed Behavior

I have applied a CPU limit of 0.2 cores per container. While the child processes (conduit start) appear to stay within a ~20% range, the parent/wrapper process is spiking to over 90% CPU usage, often staying around 100%.

Resource Limits Applied:

═══ RESOURCE LIMITS ═══
Container    CPU Limit    Memory Limit
────────────────────────────────────────
conduit      0.2 cores    512m         
conduit-2    0.2 cores    512m         
conduit-3    0.2 cores    512m         
conduit-4    0.2 cores    512m 

Process monitor output:

ps aux --sort -%cpu | grep conduit
root     1941950 92.7  0.0  14256 10012 ?        R    Feb09 705:12 /bin/bash /usr/local/bin/conduit
opc      1892388 19.7  0.2 2578764 70296 ?       Ssl  Feb09 152:06 conduit start --max-clients 500 --bandwidth 5 --stats-file
opc      1892830 19.6  0.2 2505164 70124 ?       Ssl  Feb09 151:21 conduit start --max-clients 500 --bandwidth 5 --stats-file
opc      1892612 19.6  0.3 2505100 79988 ?       Ssl  Feb09 151:04 conduit start --max-clients 500 --bandwidth 5 --stats-file
opc      1893054 19.5  0.2 2726352 62912 ?       Ssl  Feb09 149:55 conduit start --max-clients 500 --bandwidth 5 --stats-file
root     1893204  1.4  0.0   8464  4372 ?        Ss   Feb09  11:18 /bin/bash /opt/conduit/conduit-tracker.sh
root     2860927  0.0  0.0   8464  2988 ?        S    12:36   0:00 /bin/bash /opt/conduit/conduit-tracker.sh

Steps Taken to Resolve

Applied CPUQuota=5% in /etc/systemd/system/conduit.service.

daemon-reload and restarted the service.

Result: The directive was ignored or bypassed by the binary/bash wrapper, and CPU usage remained at ~100%.

Additional Context

It appears the bash script at /usr/local/bin/conduit might be entering a tight loop or failing to pass signals correctly to the child processes, causing it to consume host resources outside of the intended container constraints.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions