Einige Benutzer beschweren sich über die hohe CPU-Last, die Mumble im Zusammenhang mit PulseAudio verursacht. Tatsächlich verbrauchen PulseAudio und Mumble in Kombination sehr viel mehr CPU als Mumble in Kombination mit anderen Sound-Systemen wie ALSA oder JACK, siehe unten; jedoch gibt es unter Linux nur in Verbindung mit PulseAudio z. B. eine Echounterdrückung oder das automatische Leiser-Stellen von Musik, sobald jemand in Mumble spricht.

Neuer Patch fürs Idlen

Gegen diesen hochen CPU-Verbrauch auch im Idle-Modus gibt es einen neuen Patch von cbs228, der Folgendes macht:
Sobald sich ein Benutzer stumm oder taub stellt, wird die Soundeingabe deaktiviert – normalerweis wird diese auch dann noch verarbeitet. Ansonsten ändert sich beim Sprechen oder lauschen ohne Stumm- oder Taubstellung nichts an der CPU-Belastung.

CPU-Belastung im Vergleich

In allen Tests lief die CPU mit voller Geschwindigkeit (governor „performance“) auf 3,4 GHz. Der Mumble-Client des Testbenutzers war immer im Idle-Modus und alleine im Kanal;  es wurde also weder gesprochen noch gehört UND der Testbenutzer war stumm gestellt. Die Zahlen wurden so ca. aus htop ausgelesen.

Hinweis: Läuft die CPU mit 800 MHz in der niedrigsten Taktstufe, so wie bei mir hauptsächlich, dann ist der CPU-Fraß von Mumble und PulseAudio bezüglich der Prozentwerte noch krasser: Mit Mehrkanal-Echounterdrückung bis zu 55 %. Dann taktet sogar der Prozessor hoch, daher bin ich sehr dankbar für diesen Patch. Für diesen Vergleich wurden jedoch bewusst die Werte bei höchster Taktstufe verwendet.

CPU-Belastung ohne Patch

<th>
  <strong>CPU-Last von Mumble</strong><br /> <strong> </strong>
</th>

<th>
  <strong>CPU-Last des Soundsystems</strong>
</th>
<td>
  5 %
</td>

<td>
  4 &#8211; 5 %
</td>
<td>
  9 &#8211; 10 %
</td>

<td>
  8 &#8211; 9 %
</td>
<td>
  12,7 %
</td>

<td>
  9,3 %
</td>
Soundsystem
PulseAudio – ohne Echounterdrückung
PulseAudio – mit Echounterdrückung Gemischt
PulseAudio – mit Echounterdrückung Mehrkanal

CPU-Belastung mit Patch

<th>
  <strong>CPU-Last von Mumble</strong><strong><br /> </strong>
</th>

<th>
  <strong>CPU-Last des Soundsystems</strong>
</th>
<td>
  0,0 &#8211; 0,7 %
</td>

<td>
  0,7 &#8211; 1,3 %
</td>
<td>
  4,0 &#8211; 4,7 %
</td>

<td>
  5 &#8211; 6 %
</td>
<td>
  4,7 %
</td>

<td>
  6 %
</td>
Soundsystem
PulseAudio – ohne Echounterdrückung
PulseAudio – mit Echounterdrückung Gemischt
PulseAudio – mit Echounterdrückung Mehrkanal

CPU-Belastung anderer Sound-Systeme unter Linux

Und hier mal als Vergleich die CPU-Belastung der anderen unter Linux verfügbaren Sound-Systeme:

<th>
  <strong>CPU-Last von Mumble</strong><strong></strong>
</th>

<th>
  <strong>CPU-Last des Soundsystems</strong>
</th>
<td>
  1,3 &#8211; 2 %
</td>

<td>
  0 &#8211; 0,7 %
</td>
<td>
  1 &#8211; 3 %
</td>

<td>
  1,3 %
</td>
Soundsystem
JACK
ALSA

Bei Jack muss man jedoch bedenken, dass dieses auf ALSA draussitzt und dieses auch noch etwas von der CPU abverlangt.

Nachteile durch den Patch

Solange man stumm oder taub ist, kann man weder in der Konfiguration die Sprachaktivierung testen noch die Audiostatistik betrachten.

Fazit

Im normalen Mumble-Alltag, während man spricht oder schweigt, ohne jedoch stumm oder taub zu sein, verändert sich durch den Patch nichts. Daher sollte man mit Patches möglichst oft stumm oder taub stellen.

Den vollständigen Bugreport zum Thema gibt es hier und den Pull-Request hier. Je mehr Menschen den Patch testen und ihre Ergebnisse beim Pull-Request hinterlegen desto besser.

Hinweise

Ein Hinweis bezüglich TeeEs3: Habe damit auch zwei Tests gemacht mit maximal getakteter CPU (governor performance):

  • Aktivierte Echounterdrückung und ohne zu sprechen oder zu hören – die CPU-Auslastung des TeeEs3-Clienten liegt mit ~26 % wesentlich höher als bei Mumble mit 12,7 %.
  • Bei Verwendung von ALSA in TeeEs3 werden 8 % verbraucht, Mumble benötigt hier 1 – 3 %.

Letzer Hinweis: Falls jemand eine bessere Methode zur CPU-Auslastung-In-Erfahrungsbringung kennt als in htop zu gucken, dann bitte berichten.