Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CPU consumption is growing and not decreasing #55

Open
3 tasks done
MegaOmegaAlpha opened this issue Aug 22, 2023 · 0 comments
Open
3 tasks done

CPU consumption is growing and not decreasing #55

MegaOmegaAlpha opened this issue Aug 22, 2023 · 0 comments

Comments

@MegaOmegaAlpha
Copy link

MegaOmegaAlpha commented Aug 22, 2023

Prerequisites

These are MANDATORY, otherwise the issue will be automatically closed.

Issue description

CPU consumption is constantly at the level of 70% (8-core processor) and does not decrease, despite the fact that no one uses the platform.

Context

We are trying to build some kind of one-to-many topology. In one of our environments, we have encountered the fact that the amount of CPU resources consumed by KMS is only growing. That is, even at a time when no one is using the platform, KMS consumes about 70% of the processor. We attribute the high CPU usage to the use of the Composite module, but we don't understand why the resources are not released. Unfortunately, we don't know at what point it started, but if someone could suggest in what direction and how to investigate this problem, it would be very helpful.

Expected & current behavior

We expect that when all session participants are disconnected, the CPU load will drop to zero.

(Optional) Possible solution

Info about your environment

  • We are using WebRtcEndpoint interface to connect participants
  • HubPorts, Composite and RecorderEndpoint for recording screen of one of participant
  • KMS is working in docker container on virtual machine

About Kurento Media Server

About your Application Server

  • Programming Language: Java
  • Kurento Client version: 6.18.0

About end-user clients

  • Browser(s): Chromium based, Firefox, Safari

Run these commands

cat /etc/lsb-release

root@prod-kurento-01:/# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.7 LTS"

kurento-media-server --version

root@prod-kurento-01:/# kurento-media-server --version
ALVAR 2.0.0 - A Library for Virtual and Augmented Reality
Copyright 2007-2012 VTT Technical Research Centre of Finland
Licensed under the GNU Lesser General Public License
Built on 2022-09-14 for Linux 4.4.0-210-generic x86_64

Kurento Media Server version: 6.18.0
Found modules:
'chroma' version 6.18.0
'core' version 6.18.0
'crowddetector' version 6.18.0
'datachannelexample' version 6.18.0
'elements' version 6.18.0
'filters' version 6.18.0
'markerdetector' version 6.18.0
'platedetector' version 6.18.0
'pointerdetector' version 6.18.0

dpkg -l | grep -Pi 'kurento|kms-|gst.*1.5|nice'

root@prod-kurento-01:/# dpkg -l | grep -Pi 'kurento|kms-|gst.*1.5|nice'
ii gstreamer1.5-libav:amd64 1.8.1-1kurento1.16.04 amd64 libav plugin for GStreamer
ii gstreamer1.5-nice:amd64 0.1.18-0kurento2.16.04 amd64 ICE library (GStreamer 1.5 plugin)
ii gstreamer1.5-plugins-bad:amd64 1.8.1-1kurento5.16.04 amd64 GStreamer plugins from the "bad" set
ii gstreamer1.5-plugins-base:amd64 1.8.1-1kurento2.16.04 amd64 GStreamer plugins from the "base" set
ii gstreamer1.5-plugins-good:amd64 1.8.1-1kurento5.16.04 amd64 GStreamer plugins from the "good" set
ii gstreamer1.5-plugins-ugly:amd64 1.8.1-1kurento1.16.04 amd64 GStreamer plugins from the "ugly" set
ii gstreamer1.5-pulseaudio:amd64 1.8.1-1kurento5.16.04 amd64 GStreamer plugin for PulseAudio
ii gstreamer1.5-x:amd64 1.8.1-1kurento2.16.04 amd64 GStreamer plugins for X11 and Pango
ii kms-chroma 6.18.0-0kurento1.16.04 amd64 Kurento Chroma filter
ii kms-core 6.18.0-0kurento1.16.04 amd64 Kurento Core module
ii kms-crowddetector 6.18.0-0kurento1.16.04 amd64 Kurento Crowd Detector filter
ii kms-datachannelexample 6.18.0-0kurento1.16.04 amd64 Kurento WebRTC DataChannel example
ii kms-elements 6.18.0-0kurento1.16.04 amd64 Kurento Elements module
ii kms-filters 6.18.0-0kurento1.16.04 amd64 Kurento Filters module
ii kms-jsonrpc 6.18.0-0kurento1.16.04 amd64 Kurento JSON-RPC library
ii kms-markerdetector 6.18.0-0kurento1.16.04 amd64 Kurento Augmented Reality marker detector
ii kms-platedetector 6.18.0-0kurento1.16.04 amd64 Kurento Plate Detector filter
ii kms-pointerdetector 6.18.0-0kurento1.16.04 amd64 Kurento Pointer Detector filter
ii kmsjsoncpp 1.6.3-1kurento1.16.04 amd64 Kurento jsoncpp library
ii kurento-media-server 6.18.0-0kurento1.16.04 amd64 Kurento Media Server
ii libgstreamer-plugins-bad1.5-0:amd64 1.8.1-1kurento5.16.04 amd64 GStreamer development files for libraries from the "bad" set
ii libgstreamer-plugins-base1.5-0:amd64 1.8.1-1kurento2.16.04 amd64 GStreamer libraries from the "base" set
ii libgstreamer1.5-0:amd64 1.8.1-1kurento2.16.04 amd64 Core GStreamer libraries and elements
ii libnice10:amd64 0.1.18-0kurento2.16.04 amd64 ICE library (shared library)
ii libsrtp0:amd64 1.6.0-0kurento1.16.04 amd64 Secure RTP (SRTP) and UST Reference Implementations - shared library
ii libusrsctp 0.9.2-1kurento1.16.04 amd64 sctp-refimpl library
ii openh264 1.5.0-0kurento1.16.04 amd64 H.264 Video Codec provided by Cisco Systems, Inc.
ii openh264-gst-plugins-bad-1.5:amd64 1.8.1-1kurento5.16.04 amd64 GStreamer plugins from openh264
ii openwebrtc-gst-plugins 0.10.0-1kurento1.16.04 amd64 OpenWebRTC specific GStreamer plugins

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant