Maximale Größe des Heaps erhöhen

Android-Studio: Einrichtung (Logo)

In Android Studio, der Heap-Speicher der Java Virtual Machine (JVM) spielt eine entscheidende Rolle beim Ausführen von Android-Anwendungen. Der Heap ist der Speicherbereich, in dem Objekte zur Laufzeit dynamisch angelegt werden. Wenn der Speicherbedarf der App wächst, kann es zu Problemen wie OutOfMemoryError kommen, was die Leistung und Stabilität beeinträchtigen kann. Deshalb ist es wichtig, den Heap-Speicher zu überwachen und bei Bedarf anzupassen, um eine effiziente und fehlerfreie Ausführung zu gewährleisten.

Die JVM in Android Studio verwendet standardmäßig eine bestimmte Menge an Heap-Speicher, der während des Betriebs von Apps dynamisch zugewiesen wird. In Fällen, in denen Apps speicherintensive Operationen ausführen oder große Datenmengen verarbeiten müssen, kann es notwendig sein, diesen Speicher zu erhöhen, um zu verhindern, dass die Anwendung abstürzt oder die Leistung nachlässt. Android Studio bietet dafür verschiedene Konfigurationsmöglichkeiten, etwa durch Anpassung der Gradle- oder JVM-Optionen.

Durch die Veränderung des Heap-Speichers lässt sich das Garbage Collection-Verhalten optimieren. Garbage Collection bezieht sich auf den Prozess, bei dem nicht mehr benötigte Objekte aus dem Speicher entfernt werden, um Platz für neue Daten zu schaffen. Ein größerer Heap kann die Häufigkeit dieser Bereinigungsprozesse verringern, was zu einer besseren Performance führen kann, da weniger Zeit für die Speicherbereinigung aufgewendet wird.

Es ist jedoch wichtig, den Heap-Speicher nicht einfach willkürlich zu erhöhen, da ein zu großer Heap auch negative Auswirkungen haben kann. Ein zu großer Heap kann zum Beispiel zu längeren Pausen in der Garbage Collection führen, was die Reaktionsfähigkeit der App beeinträchtigt und zu einem schlechteren Nutzererlebnis führt. Entwickler sollten daher eine ausgewogene Einstellung finden, um sowohl den Speicherverbrauch als auch die Garbage Collection zu optimieren.

Zusammenfassend lässt sich sagen, dass der Heap-Speicher der JVM in Android Studio ein wesentlicher Faktor für die Leistung und Stabilität von Apps ist. Eine fundierte Anpassung des Speichers kann dabei helfen, die App-Performance zu verbessern, sollte jedoch mit Bedacht und unter Berücksichtigung der Gesamtsystemanforderungen vorgenommen werden.

 

Wie kann der Heap-Speicher der JVM von Android Studio verändert werden?

Ein Eingriff in den Heap-Speicher der „Java-Virtual-Machine (JVM)“ des Android Studios läuft entweder über die Datei „studio.exe.vmoptions“ oder „studio64.exe.vmoptions“ (je nachdem, ob du die 32- oder 64-Bit-Version verwendest). Diese Dateien befinden sich beide im Konfigurations-Ordner von Android Studio, der je nach Betriebssystem woanders zu finden ist:

  • Windows: %USERPROFILE%\.AndroidStudio_VERSION
  • macOS: ~/Library/Preferences/AndroidStudio_VERSION
  • Linux: ~/.AndroidStudio_VERSION

Sofern du die bestehende Leistung der Entwicklungsumgebung verbessern möchtest, kannst du die maximale Größe des Heaps (voreingestellt sind 1280MB) über eine dieser beiden Dateien vergrößern. Nachdem der Heap dann vergrößert wurde, müsste sich ein Performance-Schub bemerkbar machen.

Im nachfolgenden Blog-Artikel beschreiben wir alle Schritte und Zwischenschritte zur Anpassung des Heap-Speichers der JVM.

Achtung: Bevor du die nachfolgenden Schritte unserer Anleitung befolgst, solltest du unbedingt überprüfen, wieviel Arbeitsspeicher (RAM) dein Computer hat. Sofern dein Computer z.B. 4GB Arbeitsspeicher besitzt, solltest du den maximalen Heap-Speicher auf höchstens 2GB setzen! Außerdem sind die nachfolgenden Schritte ausschließlich unter Windows durchgeführt worden!

 

Vorbereitung
Info: Diese vorbereitende Maßnahme muss nur durchgeführt werden, wenn du mindestens "Android Studio 3.0" im Einsatz hast. Ab dieser Version ist nämlich standardmäßig die Anzeige für den Speicherverbrauch (Memory Indicator) deaktiviert. 

Wir zeigen dir in dieser Vorbereitung kurz, wie du den Indikator wieder aktivieren kannst, um später die Anpassung des Heap-Speichers überprüfen zu können.

Nachdem du Android Studio geöffnet hast, gehst du ganz oben links zunächst auf "File" und danach in der Dropdown-Liste auf "Settings".

Memory Indicator einblenden (Schritt 1)
Danach klickst du in den Einstellungen auf der linken Seite oben zuerst auf "Appearance & Behavior" und danach auf "Appearance". Im Anschluss setzt du auf der rechten Seite unten beim Eintrag "Show memory indicator" einen Haken und klickst dann auf den "OK"-Button.

Memory Indicator einblenden (Schritt 2)
Danach sollte in Android Studio, wie im nachfolgenden Screenshot, ganz unten rechts der "Memory Indicator" angezeigt werden:

Memory Indicator einblenden (Schritt 3)
Bei uns zeigt der Indikator beispielsweise aktuell einen maximalen Heap-Speicher von knapp 1GB (989MB). In der nachfolgenden Anleitung passen wir nun das Maximum des Heaps an und überprüfen zum Schluss über diesen Indikator, ob alles geklappt hat.

 

Schritt 1: „Custom VM Options“ öffnen
Nachdem du Android Studio gestartet und die oben beschriebenen Vorbereitungen getroffen hast, musst du im ersten Schritt oben in der Menüzeile zuerst auf "Help" und anschließend auf den Dropdown-Listeneintrag "Edit Custom VM Options..." klicken. 

Android Studio: Maximalen VM Heap Speicher ändern (Schritt 1)
Da die Datei "studio64.exe.vmoptions" (64-Bit-Version) bzw. "studio.exe.vmoptions" (32-Bit-Version) noch nicht existiert, musst du das Anlegen dieser Datei mit einem Klick auf "Yes" bestätigen.

Android Studio: Maximalen VM Heap Speicher ändern (Schritt 1b)

 

Schritt 2: Zeile zu „vmoptions“ hinzufügen
Sobald du die Anfrage aus dem vorhergehenden Schritt bestätigt hast, wird die Datei "studio64.exe.vmoptions" bzw. "studio.exe.vmoptions" angelegt und anschließend in Android Studio geöffnet. Dieser Datei fügst du nun folgende Zeile direkt unterhalb des Kommentars ein:

-> -Xmx2g 

Info: Du schreibst zunächst einen Bindestrich "-" und anschließend die drei Buchstaben "Xmx", wobei der erste Buchstabe groß und die anderen beiden klein geschrieben werden. Danach folgt eine benutzerdefinierte Größe für den Heap. In unserem Beispiel verwenden wir "2g", die für 2GB stehen. Du könntest hier übrigens alternativ auch "2048m" für 2048MB schreiben. Wähle einfach einen Wert deiner Wahl! Wichtig dabei ist, dass zwischen den drei Buchstaben und der Heap-Größe kein Leerzeichen steht. 

Android Studio: Maximalen VM Heap Speicher ändern (Schritt 2)

 

Schritt 3: Änderung der Datei speichern
Bei diesem Schritt musst du die zuvor hinzugefügte Zeile abspeichern. Dabei gehst du in Android Studio oben links zuerst auf "File" und danach auf "Save All". (Alternativ kannst du natürlich auch über den Shortcut "STRG + S" speichern.) Sobald alles gespeichert wurde, klickst du in der Dropdown-Liste ganz unten auf "Exit", um Android Studio zu beenden.

Android Studio: Maximalen VM Heap Speicher ändern (Schritt 3)

 

Schritt 4: Änderung des Heap-Maximums überprüfen
Nachdem du Android Studio im Schritt davor beendet hast, musst du es jetzt wieder starten. Sobald das Programm gestartet wurde, kannst du dann ganz unten rechts beim "Memory Indicator" nachschauen, ob dein vorher festgelegter Wert für die maximale Größe des Heaps übernommen wurde.

Android Studio: Maximalen VM Heap Speicher ändern (Schritt 4)

Bei uns hat die Anpassung geklappt, da der Indikator nun knapp 2GB (1981MB) anzeigt. 

Info: Sofern der von dir festgelegte Wert nicht angezeigt wird, ist selbstverständlich bei einem der Schritte etwas schiefgelaufen. In diesem Fall, gehst du einfach nochmal alle Schritte durch.