Studio Android terlalu banyak menggunakan memori

175

Saya telah menginstal Android Studio 1.0 RC 2. Saya memiliki RAM 4GB terpasang, tetapi setelah memulai Android Studio dan meluncurkan Android Emulator, lebih dari 90% memori fisik hanya digunakan oleh keduanya. Apakah ada cara untuk mengurangi penggunaan memori ini? Karena masalah memori ini, saya tidak dapat membuka aplikasi lain secara bersamaan. masukkan deskripsi gambar di sini

PPD
sumber
17
Menggunakan Eclipse atau Android Studio, dan emulator, pada mesin pengembangan Windows 4GB akan sangat menyakitkan. Saya akan sangat menyarankan Anda meng-upgrade RAM mesin pengembangan Anda (8GB atau lebih), uji pada perangkat (bukan emulator), atau lewati IDE dan lakukan pengembangan Anda menggunakan editor biasa dan alat baris perintah.
CommonsWare
2
Saya kira Anda menggunakan Windows untuk menilai dari tangkapan layar yang Anda poskan. Tapi versi Windows yang mana? Juga, karena Android Studio masih dalam masa pertumbuhan, Anda akan mendapatkan banyak masalah dengannya. Jika Anda tidak memerlukan dukungan Gradle, Anda selalu dapat mencoba Eclipse - IDE telah dicoba dan diuji selama bertahun-tahun sehingga cukup solid untuk lingkungan pengembangan - RAM bijak.
ChuongPham
1
@CommonsWare Tahukah Anda jika hal yang sama berlaku untuk PC Linux? Terima kasih sebelumnya.
Alexander Kulyakhtin
4
@PPD: Di Windows, matikan layanan yang tidak perlu melalui Alat Administratif | Opsi layanan . Pergi ke msconfigdan matikan aplikasi yang tidak perlu di tab Startup . Matikan Efek Visual yang tidak perlu di Windows. Ketika Anda menjalankan emulator Android, aktifkan opsi Gunakan Host GPU terutama jika Anda memiliki kartu grafis yang kuat. Saya memiliki PC pengembangan Windows 7 dan saya hanya menggunakan 2-2.5GB RAM pada satu waktu yang termasuk memiliki: Windows 7, Eclipse, Mozilla Firefox (tanpa add-on) dan langkah penyesuaian Windows yang baru saja saya sebutkan. Saya juga menggunakan Fedora dan bahkan menggunakan memori lebih sedikit daripada Windows.
ChuongPham
3
Hanya pengamatan: Saya dapat melihat Anda memiliki beberapa tab Google Chrome terbuka. Anda mungkin menemukan bahwa Firefox menggunakan RAM sedikit lebih sedikit karena tidak menggunakan proses per tab browser.
Sam

Jawaban:

224

Saat ini saya sedang menjalankan Android Studio pada mesin Windows 8.1 dengan 6 gigs RAM.

Saya menemukan bahwa menonaktifkan VCS di studio android dan menggunakan program eksternal untuk menangani VCS sangat membantu. Anda dapat menonaktifkan VCS dengan membuka File -> Settings -> Plugins dan menonaktifkan yang berikut:

  • Integrasi CVS
  • Integrasi Git
  • GitHub
  • Google Cloud Testing
  • Google Cloud Tools Core
  • Google Cloud Tools untuk Android Studio
  • hg4idea
  • Integrasi Subversi
  • Integrasi Mercurial
  • TestNG-J
jds17
sumber
18
nah, ubahannya sangat kecil.
krivar
5
Perbedaan besar ketika proyek Anda dikonfigurasikan dengan repositori seperti svn atau github. waktu tunggu eksekusi saya berkurang dari> 3 menit menjadi <1 menit. Terima kasih banyak atas bantuan luar biasa.
Er. Kaushik Kajavadara
4
Ini sepertinya berhasil dan membuat perbedaan besar, meskipun saya tetap mengaktifkan 'Git Integration'. Idealnya Android Studio harus memiliki ini sebagai pengaturan default.
Mr-IDE
3
Saya menggunakan metode ini untuk HP 6005 mini case dengan ram 4GB dan amd X4 Cpu. setelah dinonaktifkan semua plugin ini studio android saya dibuka sangat cepat saya tidak percaya. sebelum memulai studio android perlu 15 detik tapi sekarang muncul dalam 1 detik. terima kasih
AN
2
Juga menonaktifkan Integrasi Mercurial, TestNG-J;
xiaoweiz
108

Dalam kasus saya, ada dua sumber utama memori hogging: IDE dan Gradle:

Android Studio (hingga 1,5GB)

JVM IDE dikonfigurasi untuk memiliki ukuran tumpukan maksimum. Anda dapat melihat ini di sudut kanan bawah antarmuka utama:

Android Studio menampilkan ukuran tumpukan maksimum 725M

Anda dapat mengurangi ini dengan mengedit pengaturan terkait memori di dalam .vmoptionsberkas . Misalnya, saya mengubah ukuran tumpukan maksimum saya menjadi 512MB:

-Xmx512m

Sayangnya, saya menemukan bahwa menurunkan nilai ini meningkatkan frekuensi Android Studio untuk sementara waktu beku, mungkin untuk melakukan pengumpulan sampahnya.

Gradle (hingga 1,5GB)

Gradle juga dapat menggunakan banyak RAM setelah dikembangkan untuk sementara waktu. Windows hanya menunjukkannya sebagai Java(TM) Platform SE Binary:

Windows 8.1 Task Manager menunjukkan "Java (TM Platform SE binary" menggunakan 1.460.5 MB memori

Anda dapat memperbaikinya dengan mengubah opsi Gradle JVM. Anda dapat melakukan ini berdasarkan per pengguna dengan mengedit gradle.properties:

  1. Buka gradle.propertiesfile, buat jika tidak ada:
    • Windows: %USERPROFILE%\.gradle\gradle.properties
    • Linux / Mac: ~/.gradle/gradle.properties
  2. Perbarui org.gradle.jvmargsproperti, buat jika perlu. Saya mengatur milik saya untuk ini:

    org.gradle.jvmargs=-Xmx256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    

Saya belum melihat adanya perbedaan dalam membangun kinerja untuk proyek kecil saya dengan ukuran tumpukan maksimum diatur ke 256MB ( -Xmx256m).

Perhatikan bahwa Anda mungkin perlu me-restart Android Studio sehingga proses Gradle yang lama terbunuh; jika tidak, Anda mungkin berakhir dengan keduanya berjalan pada saat yang sama.

Emulator

Mengenai emulator yang mengambil banyak RAM Anda, tangkapan layar Anda menunjukkan butuh sekitar 800MB. Anda dapat memilih berapa banyak RAM untuk dialokasikan ke emulator:

  1. Edit AVD
  2. Tekan Tampilkan Pengaturan Lanjut
  3. Kurangi nilai RAM

Konfigurasi RAM Perangkat Virtual Android

Sam
sumber
Ini sehubungan dengan jawaban SoJexy secara dramatis meningkatkan kinerja di komputer saya.
Josh Larson
Kiat-kiat ini adalah penyelamat hidup! Ada juga opsi untuk mengubah ukuran heap yang digunakan oleh dex compiler yang semakin mengurangi penggunaan memori. Detail: techzog.com/development/android-studio-high-ram-usage
Varun
1
Dalam .vmoptionsfile itu tertulis: *DO NOT* modify this file directly. If there is a value that you would like t$ please add it to your user specific configuration file. See http://tools.android.com/tech-docs/configurationNamun, karena sepertinya tidak ada file khusus pengguna di sistem saya dan situs web tidak menjelaskan lokasi lain dari file seperti itu, saya akan pergi dengan solusi ini. Oh dan: MaxPermSize akan ditinggalkan pada beberapa titik. Itu selalu memperingatkan saya tentang hal itu ketika memulai IDE di terminal.
Zelphir Kaltstahl
1
@Zelphir, versi OS dan Android Studio mana yang Anda gunakan? Saya menggunakan Windows dan instruksi mengatakan file di bawah %USERPROFILE%, yang khusus untuk pengguna. Saya tidak pandai Linux, tetapi instruksi Mac dan Linux juga mengatakan file tersebut di bawah ~, yang saya kira adalah direktori home pengguna? Jika file tidak ada, mungkin Anda bisa membuatnya; dokumentasi yang disebutkan di atas mengatakan Instead, you can customize the attributes by creating your own .properties or .vmoptions files in the following directories.. Bisakah Anda memberi tahu saya jika itu berhasil sehingga saya dapat memperbarui jawabannya?
Sam
3
Saran yang luar biasa! Untuk Gradle, saya memecahkan masalah dengan cara "pengguna-lebar" dengan mengedit ~/.gradle/gradle.properties.
Andrea Lazzarotto
51

Anda dapat mempercepat pekerjaan Eclipse atau Android Studio Anda, cukup ikuti ini:

  • Gunakan / buka satu proyek sekaligus
  • bersihkan proyek Anda setelah menjalankan aplikasi Anda di emulator setiap saat
  • gunakan perangkat seluler / eksternal alih-alih emulator
  • jangan tutup emulator setelah menggunakan sekali, gunakan emulator yang sama untuk menjalankan aplikasi setiap kali
  • Nonaktifkan VCS dengan menggunakan File-> Pengaturan-> Plugin dan nonaktifkan hal-hal berikut:
    1.CVS Integration
    2.Git Integration
    3.GitHub
    4.Google Cloud Tools untuk Android Studio
    5. Integrasi Subversion

Saya juga menggunakan Android Studio dengan memori utama terpasang 4-GB tetapi mengikuti pernyataan ini benar-benar meningkatkan kinerja Android Studio saya.

Kulartis
sumber
1
Saya menonaktifkan semua hal dalam daftar. Masih menggunakan ram sekitar 1.5gb yang sama
Arshad
@ arshadkazmi42 ceritakan konfigurasi PC Anda
KulArtist
i3, 4GB RAM, 500GB HDD
Arshad
13
Saya pikir ini omong kosong untuk mengatakan bahwa "i3" adalah penyebab kegagalan dalam pengerjaan perangkat lunak!
XMight
1
Prosesor i3 saya ingin menantang> i3 Anda, apakah Anda ingin menerima tantangan ini? Tidak ada yang akan mengatakan i3 menyebabkan lebih lambat atau mengambil memori tinggi ...
Sabir Hossain
28

Android Studio baru-baru ini menerbitkan panduan resmi untuk mesin memori rendah: Panduan

Jika Anda menjalankan Android Studio pada mesin dengan spesifikasi kurang dari yang disarankan (lihat Persyaratan Sistem), Anda dapat menyesuaikan IDE untuk meningkatkan kinerja pada mesin Anda, sebagai berikut:

  • Kurangi ukuran tumpukan maksimum yang tersedia untuk Android Studio : Kurangi ukuran tumpukan maksimum untuk Android Studio menjadi 512Mb.

  • Perbarui Gradle dan plugin Android untuk Gradle : Perbarui ke versi terbaru Gradle dan plugin Android untuk Gradle untuk memastikan Anda memanfaatkan peningkatan kinerja terbaru.

  • Aktifkan Mode Hemat Daya : Mengaktifkan Mode Hemat Daya mematikan sejumlah operasi latar belakang intensif-baterai dan baterai, termasuk penyorotan kesalahan dan inspeksi saat-sedang-jalan, penyelesaian kode autopopup, dan kompilasi latar tambahan otomatis. Untuk mengaktifkan Mode Hemat Daya, klik File> Mode Hemat Daya.

  • Nonaktifkan pemeriksaan serat yang tidak perlu : Untuk mengubah pemeriksaan serat mana yang dijalankan Android Studio pada kode Anda, lakukan sebagai berikut: Klik File> Pengaturan (pada Mac, Android Studio> Preferensi) untuk membuka dialog Pengaturan. Di panel kiri, perluas bagian Editor dan klik Inspeksi. Klik kotak centang untuk memilih atau membatalkan centang pemeriksaan serat yang sesuai untuk proyek Anda. Klik Terapkan atau OK untuk menyimpan perubahan Anda.

  • Debug pada perangkat fisik : Debug pada emulator menggunakan lebih banyak memori daripada debug pada perangkat fisik, sehingga Anda dapat meningkatkan kinerja keseluruhan untuk Android Studio dengan men-debug pada perangkat fisik.

  • Hanya menyertakan Layanan Google Play yang diperlukan sebagai dependensi : Termasuk Layanan Google Play sebagai dependensi dalam proyek Anda meningkatkan jumlah memori yang diperlukan. Hanya sertakan dependensi yang diperlukan untuk meningkatkan penggunaan memori dan kinerja. Untuk informasi lebih lanjut, lihat Menambahkan Layanan Google Play ke Proyek Anda.

  • Kurangi ukuran heap maksimum yang tersedia untuk kompilasi file DEX : Atur kompilasi javaMaxHeapSize untuk file DEX menjadi 200m. Untuk informasi lebih lanjut, lihat Meningkatkan waktu pembuatan dengan mengkonfigurasi sumber daya DEX .

  • Jangan aktifkan kompilasi paralel : Android Studio dapat mengkompilasi modul independen secara paralel, tetapi jika Anda memiliki sistem memori rendah Anda tidak boleh mengaktifkan fitur ini. Untuk memeriksa pengaturan ini, lakukan sebagai berikut: Klik File> Pengaturan (pada Mac, Android Studio> Preferensi) untuk membuka dialog Pengaturan. Di panel kiri, rentangkan Build, Execution, Deployment, lalu klik Compiler. Pastikan bahwa opsi kompilasi modul independen secara paralel tidak dicentang. Jika Anda telah membuat perubahan, klik Terapkan atau OK untuk perubahan Anda berlaku.

  • Aktifkan Mode Offline untuk Gradle : Jika Anda memiliki keterbatasan bandwidth, aktifkan Mode Offline untuk mencegah Gradle mencoba mengunduh dependensi yang hilang selama pembuatan Anda. Ketika Mode Offline aktif, Gradle akan mengeluarkan kegagalan build jika Anda kehilangan dependensi, alih-alih mencoba mengunduhnya. Untuk mengaktifkan Mode Offline, lakukan sebagai berikut:

    • Klik File> Pengaturan (pada Mac, Android Studio> Preferensi) untuk membuka dialog Pengaturan.

    • Di panel kiri, rentangkan Build, Execution, Deployment, lalu klik Gradle.

    • Di bawah Pengaturan Global Gradle, centang kotak centang Offline work.

    • Klik Terapkan atau OK untuk perubahan Anda berlaku.

Androidmeda
sumber
16

Saya telah menggunakan semua rekomendasi Sam di atas, tetapi saya menemukan bahwa opsi baris perintah VM tidak lagi didukung seperti yang dijelaskan. (Saya menerima kesalahan saat digunakan)

Sebagai alternatif, saya dapat mengurangi gradle secara dramatis dengan menambahkan baris berikut ke file "gradle.properties"

org.gradle.jvmargs=-Xms512m -Xmx1024m

Pada AS ver 1.3, file tersebut berada di tingkat folder yang sama dengan "gradle.build".

Konfigurasi di atas adalah "tumpukan memori" 512 meg, dan "tumpukan memori" 1024 meg.

Saya menguji ini pada proyek kecil, menggunakan pengaturan di mana kedua ukuran memori diatur ke 256 mcg. Ini membatasi ukuran JVM seperti yang diharapkan. Dalam semua pengujian saya, saya memulai kembali AS untuk memaksa JVM untuk memulai kembali.

Mudah-mudahan, ini akan menyelamatkan orang lain yang berurusan dengan masalah ini dari mendapatkan tanggapan "Dapatkan komputer yang lebih baik". :-)

Dilber

SpacemanScott
sumber
Terima kasih; ini bekerja untuk saya di AS 1.3! Saya memperbarui instruksi dalam jawaban saya untuk membahas metode ini karena saya belum menemukan cara lain untuk melakukannya di AS 1.3.
Sam
2

Saya memiliki Android Studio 2.1.1 Bro menggunakan emulator genymotion Ini Lebih Cepat Jika Menggunakan Android Marshmallow. Dan Ram saya adalah 4gb. Dan Instal Plugin untuk genymotion di Android Studio.You akan melihat hasil yang baik daripada membuang-buang waktu memulai android emualtor itu akan membutuhkan 5 menit.

Nick
sumber
3
Seperti gratis.
Ojonugwa Jude Ochalifu
Genymotion tidak lebih cepat dalam kinerja. Emulator adalah, Tapi ya itu mulai ARM lebih cepat dan sangat cepat bahwa emulator Android studio IntelX86 dan X64.
Mahdi-Malv
2

Untuk mengurangi keterlambatan saya akan merekomendasikan langkah-langkah berikut

spesifikasi pc saya: ram 2 gb, prosesor: intel core2 duo

pertama-tama bunuh semua proses latar belakang, jika Anda memiliki server atau database yang berjalan, Anda bisa menghentikannya terlebih dahulu dengan perintah berikut

sudo service apache2 berhenti

layanan sudo berhenti mysql

Kemudian aktifkan mode hemat daya di android studio dengan file> mode hemat daya

Itu bisa menonaktifkan proses latar belakang, dan kemudian studio tampaknya berjalan dengan baik

Naveen
sumber
Jangan mengerti mengapa kita perlu mengaktifkanPower Save Mode
Morozov
Morozov, jika kita mengaktifkan mode hemat daya, ia membunuh aktivitas latar belakang studio android, sehingga akan meningkatkan kinerjanya
Naveen
ya, mode hemat daya menghentikan proses itu
Naveen
2

Untuk menjalankan Android envirorment pada mesin konfigurasi rendah.

  1. Tutup tab web yang tidak diakses di browser
  2. Untuk pengguna Antivirus, kecualikan folder build yang dibuat secara otomatis
  3. Android studio memiliki 1.2 Gb default heap dapat berkurang hingga 512 MB

Bantuan> Edit opsi VM khusus

studio.vmoptions
 -Xmx512m

Performace tata letak akan dipercepat

  1. Untuk Gradle salah satu komponen inti di Android studio Mkae yakin seperti sekarang 3.0beta adalah yang terbaru

Kiat di bawah ini dapat memengaruhi kualitas kode, jadi harap digunakan dengan hati-hati:

  1. Studio berisi Mode Hemat Daya ketika dinyalakan akan menutup operasi latar belakang yang berserat, kode komplit dan sebagainya.

  2. Anda dapat menjalankan pemeriksaan serat secara manual bila diperlukan ./gradlew lint

  3. Sebagian besar menggunakan emulator Android rata-rata mengkonsumsi 2 GB RAM jadi jika mungkin menggunakan perangkat Android yang sebenarnya ini akan mengurangi beban sumber daya Anda di komputer Anda. Atau Anda dapat mengurangi RAM emulator dan secara otomatis akan mengurangi konsumsi memori virtual pada komputer Anda. Anda dapat menemukannya di konfigurasi perangkat virtual dan pengaturan lanjutan.

  4. Mode offline Gradle adalah fitur untuk pengguna dengan bandwidth terbatas untuk menonaktifkan pengunduhan dependensi build. Ini akan mengurangi operasi latar belakang yang akan membantu meningkatkan kinerja studio Android.

  5. Studio Android menawarkan optimasi untuk mengkompilasi beberapa modul secara paralel. Pada mesin RAM rendah fitur ini kemungkinan akan berdampak negatif pada kinerja. Anda dapat menonaktifkannya di dialog pengaturan kompiler .

Smit Patel
sumber
"studio.vmoptions -Xmx512m" membunuh studio Android untuk saya. Tidak akan lagi membuka "Gagal membuat JVM: kode kesalahan -1". Bagaimana saya bisa membalikkan perubahan ini?
MeatPopsicle
1
Seandainya ada orang lain yang jatuh ke dalam perangkap yang sama. Anda dapat memperbaikinya dengan masuk ke C: \ Users \ <username> \ .AndroidStudio <version> \ config dan mencari file .vmoptions. Jika cocok dengan konfigurasi yang baru saja Anda tambahkan Anda mungkin aman untuk menghapusnya
MeatPopsicle
1

Coba alihkan JVM Anda ke eclipse openj9. Ini akan menggunakan memori jauh lebih sedikit. Saya menukarnya dan menggunakan 600Mb terus-menerus.

Vijay Britto
sumber
1

Saya tidak tahu apakah ini solusi tetapi Invalidate Cache and Restartmenyelesaikan masalah ini dalam kasus saya. Saat ini saya menggunakan Android Studio 3.6

Aziz
sumber
0

Buka lintasan penyebutan di sistem Anda dan hapus semua AVD Anda (Perangkat virtual: Emulator)

C: \ Users {Username} .android \ avd

Catatan: - Menghapus Emulator hanya dari android studio tidak akan menghapus semua ruang yang direbut oleh AVD mereka. Jadi hapus semua AVD dari path yang diberikan di atas dan kemudian buat emulator baru, jika Anda perlu.

Narender Gusain
sumber