Android Studio: cómo aumentar el tamaño del montón asignado

118

He estado usando Android Studio durante 3 meses y una de las aplicaciones con las que comencé se ha vuelto bastante grande. El uso de memoria indicado en la parte inferior derecha del programa dice que mi montón asignado tiene un máximo de 494M.

ingrese la descripción de la imagen aquí

Cuando comienzo a cambiar los archivos XML, mi uso de memoria alcanza rápidamente ese límite y el IDE se bloquea con un error de memoria insuficiente como este.

ingrese la descripción de la imagen aquí

Intenté aumentar el tamaño del montón usando esto, pero hasta ahora no ha habido ningún efecto.

He visto docenas de artículos y otras preguntas sobre cómo aumentar el tamaño del montón, pero ninguna de sus respuestas funciona. No importa lo que haga con VMOPTIONS o la configuración de IDE, el tamaño del montón nunca aumenta. Creo que estoy editando el archivo correcto para VMOPTIONS porque si le doy intencionalmente un comando no válido, Android Studio se queja y no se inicia.

Estoy usando Windows 7 - 64 bits y tengo 16 GB de RAM. ¿Alguien más ha tenido este problema con Android Studio? ¿Y pudiste arreglarlo?

zafrani
fuente
Consulte la respuesta de @moxi a continuación para obtener la información más actualizada sobre la configuración de configuraciones específicas del usuario para la memoria y el inicio de JVM de estudio stackoverflow.com/a/29057416/396005
Bron Davies
1
Documentación de Android Studio actualizada: developer.android.com/studio/intro/…
Morrison Chang

Respuestas:

136

-------EDITAR--------

Android Studio 2.0 y superior, puede crear / editar este archivo accediendo a "Editar opciones de VM personalizadas" desde el menú Ayuda.

------- RESPUESTA ORIGINAL --------

Abrir archivo ubicado en

/Applications/Android\ Studio.app/Contents/bin/studio.vmoptions

Cambiar el contenido a

-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops

Xmxespecifica el grupo de asignación de memoria máxima para una máquina virtual Java (JVM), mientras que Xmsespecifica el grupo de asignación de memoria inicial. Su JVM se iniciará con una Xmscantidad de memoria y podrá utilizar una Xmxcantidad máxima de memoria.

Guarde el studio.vmoptionsarchivo y reinicie Android Studio.

Más en esta publicación .

Nota:

Si cambió el tamaño del montón para el IDE, debe reiniciar Android Studio antes de aplicar la nueva configuración de memoria. ( fuente )

Wesley
fuente
Esto me solucionó un problema en un proyecto muy grande en el que Android Studio se quedaba sin memoria después de 15 minutos mientras se construía el mapa de símbolos. Cambié Xms a 1024m y Xmx a 4096 y el mapa de símbolos se construyó en menos de 30 segundos, por lo que el recolector de basura debe haber estado golpeando durante mucho tiempo.
RikMaxSpeed
10
Como señaló Lord Flash: A partir de Android Studio 2.0, puede crear / editar este archivo accediendo a "Editar opciones de VM personalizadas" desde el menú Ayuda.
Lasse Magnussen
Gracias, es muy útil. Para su información, si usa la versión de 64 bits, el archivo para editar se llama studio64.exe.vmoptions.
Eselfar
50

Miré mis Variables de entorno y se llamó a una Variable del sistema _JAVA_OPTIONScon el valor -Xms256m -Xmx512m, después de cambiar esto al -Xms256m -Xmx1024mtamaño máximo del montón aumentado en consecuencia.

zafrani
fuente
9
No había ninguna variable del sistema llamada _JAVA_OPTIONS. pero creé manualmente uno nuevo y funciona bien. gracias
Yasir Ali
¡Bien, esto funciona! Me pregunto si aumentar el tamaño del montón es algo bueno ... quiero decir, funciona y seguramente en ciertos casos es la forma correcta, pero ¿es siempre la forma correcta? ¿O puede haber mejores soluciones? ¡Gracias!
Marino
¿Este problema también se debe al tamaño del montón? stackoverflow.com/questions/29148374/…
Sagar Devanga
Tampoco funcionó para mí, pero resulta que Android Studio había dejado algunos procesos de Java colgando de ejecuciones anteriores, y todos obviamente todavía usaban mucha memoria.
alex.magellan
48

O puede ir a su android-studio\bincarpeta y cambiar estos valores -Xmx y -Xms en studio.exe.vmoptionso studio64.exe.vmoptionsarchivos (dependiendo de la versión que esté ejecutando).

cocodrilo
fuente
2
Esto no funcionó para mí porque la variable _JAVA_OPTIONS se estaba utilizando como valor predeterminado.
zafrani
Cambié ambas opciones (vmoptions y _JAVA_OPTIONS) pero todavía tengo el error
Raphael Royer-Rivard
Si ingresa deliberadamente un error de sintaxis en las opciones vmoptions, ¿bloquea el programa cuando lo reinicia?
zafrani
No estoy seguro, pero no creo que deba hacerlo. Además, ¿puedo preguntar por qué ingresaría un error de sintaxis en vmoptions a propósito?
Croc
32

Aumenté mi memoria siguiendo la siguiente documentación de Google:

http://tools.android.com/tech-docs/configuration

Por defecto, a Android Studio se le asigna un máximo de 750Mb, cambié a 2048Mb.

Probé lo que describió Google, pero para mí lo único que funcionó fue usar una variable de entorno. Describiré lo que hice:

Primero creé un directorio que llamé .AndroidStudioSettings,

  • mkdir .AndroidStudioSettings

Luego creé un archivo llamado studio.vmoptions, y puse en ese archivo el siguiente contenido:

-Xms256m 
-Xmx2048m 
-XX:MaxPermSize=512m 
-XX:ReservedCodeCacheSize=128m 
-XX:+UseCompressedOops 

Luego agregué las variables de entorno STUDIO_VM_OPTIONS en mi archivo .profile:

  • export STUDIO_VM_OPTIONS=/Users/youruser/.AndroidStudioSettings/studio.vmoptions

Luego recargo mi .profile:

  • source ~/.profile

Y finalmente abro Android Studio:

  • open /Applications/Android\ Studio.app

Y ahora, como puede ver usando la barra de estado , tengo más de 2000 MB disponibles para Android Studio:

ingrese la descripción de la imagen aquí

Puede personalizar sus valores de acuerdo a su necesidad en mi caso 2048Mb es suficiente.

ACTUALIZACIÓN: Android Studio 2.0 le permite modificar este archivo accediendo a "Editar opciones de VM personalizadas" desde el menú Ayuda, simplemente copie y pegue las variables que desee conservar para aumentarlas para cada versión que tenga en su caja.

moxi
fuente
¿No funcionaría esta solución solo al abrir AS desde el shell?
guy.gc
¿Dónde está escribiendo los comandos, como export STUDIO_VM_OPTIONS=/Users/youruser/.AndroidStudioSettings/studio.vmoptionsen la terminal?
COYG
31

No debe editar ningún archivo en el directorio de instalación de IDE. En su lugar, puede personalizar los atributos creando sus propios archivos .properties o .vmoptions en los siguientes directorios. (Esto ha sido posible en algunas plataformas antes, pero requería que copiaras y cambiaras todo el contenido de los archivos. Con los últimos cambios, estas propiedades ahora son aditivas, de modo que puedes establecer solo los atributos que te interesan y el resto utilizará los valores predeterminados de la instalación del IDE).

Nota: A partir de Android Studio 2.0, puede crear / editar este archivo accediendo al archivo "Editar opciones de VM personalizadas" desde el menú Ayuda.

http://tools.android.com/tech-docs/configuration

ingrese la descripción de la imagen aquí

Tobias
fuente
12

Si está utilizando MAC BOOK , esta opción está disponible dentro de Aplicaciones -> Haga clic con el botón derecho en Android Studio y luego elija Mostrar contenido del paquete -> bin .

ingrese la descripción de la imagen aquí

o

abierto -e /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions

Entonces aumenta el Xmxvalor

-Xms128m
-Xmx2048m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

Ahora tu Android Studio será súper rápido.

Ashokchakravarthi Nagarajan
fuente
10

Android Studio 3.1 tiene la opción de editar sus opciones de memoria virtual personalizadas.

Puede ir a Android Studio> Ayuda> Editar opciones de VM personalizadas

ingrese la descripción de la imagen aquí

Luego pegue el código de configuración a continuación en el archivo studio64.exe.vmoptions y guárdelo .

ubicación del archivo: "\ Users \ username \ .AndroidStudio3. ** \ config \"

-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops
Shihab Uddin
fuente
1
Esa última línea es incorrecta: Android Studio 3.2 se bloquea al iniciarse allí.
CommonsWare
9

Nota: ahora, esta no es la respuesta para la publicación, pero tal vez esto sea útil para alguien que esté buscando.

Si nada de esto funciona para usted, pruebe esto en una Mac para ver si le ayuda, en la última versión de Android Studio, studio.vmoptions está dentro de AndroidStudio.app en su carpeta de Aplicaciones.

Así que haga clic derecho o ctrl haga clic en su AndroidStudio.App y luego seleccione mostrar el contenido del paquete en el que se encuentra studio.vmoptions:

Contenido / bin / studio.vmoptions

Reemplácelo o cámbielo y obtendrá toda la RAM que necesita.

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Saludos.

Marco Antonio Uzcategui Pescoz
fuente
No debe cambiar ese archivo, sino el que se indica aquí: tools.android.com/tech-docs/configuration . Para Mac: ~ / Library / Preferences / {FOLDER_NAME} /studio.vmoptions
GaRRaPeTa
6

Probé lo de _JAVA_OPTIONS pero todavía no me funcionaba.

Al final, lo que funcionó para mí fue lo siguiente:

  • Lanzamiento de studio64.exe en lugar de studio.exe (tengo una máquina de 64 bits).
  • Agregue o cambie los siguientes valores en "studio64.exe.vmoptions":

-Xms2048m
-Xmx2048m
-XX:MaxPermSize=1024m
-XX:+CMSClassUnloadingEnabled
-XX:+CMSPermGenSweepingEnabled 
-XX:+HeapDumpOnOutOfMemoryError
-Dfile.encoding=utf-8

CaroBarriga
fuente
1
Hice exactamente lo mismo que tú, todavía tengo los errores de memoria insuficiente
Raphael Royer-Rivard
¿Ha actualizado a la última versión de Android Studio? Estoy usando Canary Channel y tengo 1.0 RC 4
ExpensiveBelly
No, estaba en 0.8.14, pero encontré la causa de la pérdida de memoria. Crear un color llamado "light_gray" y usarlo en un archivo de diseño usa memoria infinita ... "light_grey" está bien.
Raphael Royer-Rivard
6

Hay muchas respuestas que ahora están desactualizadas. La forma deseada de cambiar el tamaño del montón para Android Studio cambió recientemente.

Los usuarios ahora deben crear su propio archivo vmoptions en uno de los siguientes directorios;

Ventanas: %USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions

Mac: ~/Library/Preferences/{FOLDER_NAME}/studio.vmoptions

Linux: ~/.{FOLDER_NAME}/studio.vmoptions and/or ~/.{FOLDER_NAME}/studio64.vmoptions

El contenido del *.vmoptionsarchivo recién creado debe ser:

-Xms128m
-Xmx750m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=96m
-XX:+UseCompressedOops

Para aumentar la asignación de RAM, cambie -XmX750ma otro valor.

Las instrucciones completas se pueden encontrar aquí: http://tools.android.com/tech-docs/configuration

Charles Durham
fuente
1
pero no hay ningún archivo studio.vmoptionsen la ruta que mencionaste. están por debajo%AndroidStudioInstallationPath%\bin\studio.exe.vmoptions
Mulgard
Esta es la respuesta correcta. Otros están obsoletos o desanimados.
GaRRaPeTa
4

Primero verifique la cantidad de memoria asignada para su estudio de Android para verificar que siga estos pasos:

Archivo -> Configuración-> Apariencia y comportamiento-> Apariencia

luego verifique la opción mostrar indicador de memoria como la parte resaltada en rojo de la imagen de abajo ingrese la descripción de la imagen aquí

En mi caso, mi RAM es de 12 Gb, por lo que he asignado memoria para Android Studio de 6 GB. Para editar, siga estos pasos

Ayuda-> Editar opciones de VM personalizadas

-Xmx6g

En mi caso, lo configuré en 6 GB porque la memoria RAM de mi PC es de 12 GB. Depende de usted cuánta memoria desea asignar a su estudio de Android

Hoque MD Zahidul
fuente
3

En Windows 7, [INSTALL-LOCATION]\binparece que se ignoran los archivos de configuración en . Según la siguiente documentación de Google, el archivo que se modificará debería estar aquí:%USERPROFILE%\.AndroidStudio\studio[64].exe.vmoptions

http://tools.android.com/tech-docs/configuration

Es extraño que no exista tal archivo después de una instalación limpia de Android Studio 1.1 desde el sitio del desarrollador. Y están en la ubicación antigua (ignorada). Una vez que copio el archivo ( studio.exe.vmoptionsen mi caso) y lo modifico, se respeta el cambio.

Sin embargo, la diversión no termina ahí. Hay un valor superior -Xmxque puede estar relacionado con la cantidad de memoria en su sistema. Yo sólo encontré con la memoria de mi máquina de 4 GB a 16 GB, y asumió que podía establecer -Xmxa 2048m, pero he encontrado que si me puse a algo más grande que 1500m,Android sería Estudio en silencio no iniciarse sin ninguna indicación en absoluto de por qué. Tengo más RAM en camino, por lo que será interesante ver si puedo aumentar el valor en ese momento.

Espero que esta información adicional sea útil. Si bien todas las respuestas anteriores fueron indudablemente ciertas en un momento (y aún pueden serlo en algunos entornos), descubrí que este era el único enfoque que aumentaba la memoria utilizada por AS para mí.

Groovee60
fuente
2

Abra studio.vmoptions y cambie las opciones de JVM

studio.vmoptions se ubica en / Applications / Android \ Studio.app/bin/studio.vmoptions (Mac OS). En mi máquina, parece

-Xms128m
-Xmx800m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

Cambiar a

-Xms256m
-Xmx1024m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

Y reinicia Android Studio

Ver más sitio web de Android Studio

Bao Le
fuente
2

Encontré en Windows 7/8 (64 bits), a partir de Android Studio 1.1.0:

[INSTALL_DIR]\bin\studio64.exe.vmoptions ser utilizado (si existe), de lo contrario siempre volvería a %USERPROFILE%.\AndroidStudio\studio[64].exe.vmoptions

Si desea administrar la configuración desde %USERPROFILE%.\AndroidStudio\studio[64].exe.vmoptions, simplemente elimine la del directorio de instalación.

Jay Sidri
fuente
2

Vaya a Gradle Scripts -> local.properties y pegue esto

`org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m`

, si desea cambiarlo a 512. ¡Espero que funcione!

Rares-Mihai Chelariu
fuente
2

se supone que no debe modificar el archivo bin / studio.exe.vmoptions, que se verificará durante la aplicación del parche de actualización.

Las soluciones están aquí http://tools.android.com/tech-docs/configuration

copie ese archivo en la siguiente ubicación, luego cambie el -Xmx1280m a lo que desee.

Ventanas:

%USERPROFILE%\.{FOLDER_NAME}\studio.exe.vmoptions y / o %USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions

%USERPROFILE%\.{FOLDER_NAME}\idea.properties

Mac:

~/Library/Preferences/{FOLDER_NAME}/studio.vmoptions ~/Library/Preferences/{FOLDER_NAME}/idea.properties

Linux:

~/.{FOLDER_NAME}/studio.vmoptions y / o ~/.{FOLDER_NAME}/studio64.vmoptions

~/.{FOLDER_NAME}/idea.properties

landerly joven
fuente
1
Es más seguro usar la función propia de IntelliJs / Android Studios para hacerlo: Abra el IDE y haga clic en "Ayuda" -> "Editar opciones de VM personalizadas"
Thommy
2

Me había sucedido este problema Xmsy Xmxla falta de memoria cada vez que trabajaba con XML. También intenté aumentar esta memoria, solo para descubrir que solo tardó un poco más en volver a suceder.

Después de sentirme muy frustrado y casi decidir convertir todos mis proyectos actuales de nuevo a Eclipse, lo que no quería hacer, descubrí qué lo estaba causando y pude repetir este error y prevenirlo cada vez.

Al editar el XML en (Vista de texto) y al utilizar la vista de renderizado "Vista previa", esto provoca la pérdida de memoria, todo el tiempo. Al desactivar "Vista previa" y usar la pestaña Diseño para representar solo la pantalla, puedo usar Android Studio durante todo el día, sin fallas.

Desearía que esto se pudiera arreglar para siempre, porque sería muy bueno usar el renderizado de "Vista previa" mientras se edita el XML, sin embargo, me alegro de poder seguir usando Android Studio.


fuente
2

Así es como se cambia el tamaño del montón actualmente en Android Studio 3.6.1

En Windows en tu Android Studio:

  1. Seleccione Archivo -> Configuración (se mostrará la ventana emergente a continuación)

Diálogo de configuración

  1. Seleccione Apariencia y comportamiento
  2. Seleccione Configuración del sistema
  3. Seleccionar configuración de memoria

Luego, cambie la configuración de Tamaño de pila IDE al valor deseado

En Mac:

  1. Seleccione Android Studio
  2. Seleccionar preferencias

Aparecerá la misma ventana emergente. Sin embargo, esta vez en Mac se llama Preferencias.

Siga los mismos pasos que la versión de Windows de Android Studio para ajustar el tamaño del montón que desea que se muestre el cuadro de diálogo Preferencias

Jorge
fuente
1

Puede ayudar a alguien que tenga este problema:

Edito el studio64.exe.vmoptionsarchivo, pero no pude guardarlo.

Así que abrí este archivo con Notepad ++ en Run as Administratormodo y luego lo guardé correctamente.

Sayed Abolfazl Fatemi
fuente
1

-Xms256m 
-Xmx2048m 
-XX:MaxPermSize=512m 
-XX:ReservedCodeCacheSize=128m 
-XX:+UseCompressedOops 

Kamil
fuente
6
Una pequeña explicación seguramente mejoraría su respuesta.
m02ph3u5
1

SI al cambiar o crear el .studio.exe.vmoptionsno funciona, intente cambiar el gradle.propertiesarchivo y cambie el tamaño del montón según sus requisitos.

Realmente funcionó para mí en mi Windows 7 con 4Gb de RAM y Android Studio 2.2 instalado.

Funciona correctamente sin errores y muestra 'Gradle Sync complete'

Dishant J
fuente
Tuve que agregar un grade.properties para establecer el tamaño máximo de pila que se usó cuando depuré mi aplicación. Pero tengo que preguntar, ¿por qué la configuración de studio.vmoptions como se menciona en la página de configuración de Android Studio no funciona como se anuncia? Mi preocupación es que estoy haciendo algo fundamentalmente mal (pero seguro que no lo parece). (Gracias)
Publiqué
1

En Mac OSX, uno puede cambiar fácilmente el tamaño del montón yendo al primer elemento del menú, Android Studio> preferencia> Configuración del sistema (menú de la izquierda)> Configuración de memoria y cambiar el tamaño del montón allí en el cuadro de diálogo.

ingrese la descripción de la imagen aquí

Hammad Khan
fuente