Kaynaktan Android Oluştururken En Büyük Darboğazlar

click fraud protection

AOSP projesinin hangi darboğazları oluşturduğunu merak mı ediyorsunuz? Dan, neyin darboğaza neden olup olmadığı konusunda okuyucuları şaşırtabilecek bulgularını paylaşıyor.

Güncelleme 19.04.12:00 CT: Açıklanan derleme süreleri, ccache derleme süreleridir.Güncelleme 4/20 09:17 CT: Yapı 3 kesinlikle RAID 1 değildi. Bu hatayı düzeltti.

2012'de çekirdek oluşturmaya başladım ve bunu oluşturmak için güvenilir Core 2 Quad Q9550'ye güvendim. Eğer bu utanç verici değilse, o zaman bunu Windows içindeki bir VM'de yapmış olmam muhtemelen Android'i kaynaktan geliştiren çoğu insan için bunu sağlayacaktır.

Sanallaştırılmış bir Ubuntu ortamı, yerel bir ortam kadar iyi performans göstermiyor ve ah, bir çekirdeğin oluşturulması 2 saatten fazla sürdüğünde bu ne kadar acı verici hale geldi. Ertesi yıl Android'i kaynaktan oluşturmaya başlamak istediğimden mevcut donanımımın bunu başaramayacağını biliyordum. kestik - ve böylece sürekli büyüyen yapıyı azaltmanın bir yolunu bulmak için uzun ve hala devam eden bir yolculuğa başladık zaman.

O zamandan bu yana geçen yıllarda birden fazla form faktörü ve platformda test yapma şansına sahip oldum. Yapı yapılandırmaları Android'de herkese uyan tek boyutlu bir durum olmadığından bu önemlidir. Bir uygulama geliştiricisinin oyun geliştiricisiyle aynı konfigürasyona ihtiyacı olmayabilir. Ve yalnızca çekirdek oluşturan birinin, çok kısa bir süre içinde kaynaktan tam bir Android ROM oluşturması gereken biri kadar harcama yapması gerekmeyebilir. Peki ya işletim sistemi seçimi - şu anda ne kullanılabilir (ve kullanılamaz)? Bunu da daha fazla keşfetmeyi umuyorum, özellikle Windows ve Canonical, Windows 10'a tam teşekküllü bir Bash getirmek için çalışıyor.

Bu seriyi doğru bir şekilde başlatmak için, AOSP projelerini kaynaktan oluştururken en büyük potansiyel darboğazların nerede olduğunu bulmamız gerekiyor. Paranızı nereye koyacağınızı bilmeden genellikle bilgisayar veya yükseltme alışverişine gitmeyiz. 3 yıllık araştırma ve ölçülebilir sonuçlara dayanarak bulduklarımı paylaşmaya hazırım. Şimdi beklenen sorumluluk reddi beyanı: Bu bulgular kişisel deneyimlere dayanmaktadır ve muhtemelen tüm kombinasyonları hesaba katamaz. Kendi yapı konfigürasyonunuza sahip olanlar, sesinizi kesin ve yapılarınızın nasıl gittiğini bize bildirin! Times aynı zamanda ccache'nin etkin olduğu ve doldurulduğu yapılardan da bahsediyor; ccache henüz doldurulmadığında genellikle iki katıydı.

Disk G/Ç: Cyanogen'den Tom Marshall'a bir şapka ipucu vermem gerekiyor - ayrıca Kang Takımının üyesi - geçen sene beni bu yöne yönlendirdiğin için. Bana bunun böyle olacağını söylediğinde açıkçası ona inanmadım. the CPU üzerinde darboğaz. Ancak son 6 ayda bunu ölçülebilir verilerle desteklemeyi başardım. Üst düzey CPU'larda (çoğu masaüstü Intel Core i7 modeli gibi) bu, sisteminizin karşılaşacağı en büyük darboğazdır.

Bunu test ettiğim 4 yapı konfigürasyonunu ele alalım. Burada CPU'yu vurgulayacağım,

  • "Yükseltilmemiş" bilgisayarım olan Build 1, 32 GB DDR3-2400 RAM'e sahip bir Intel i7-4790K, birincil sürücüm için bir Samsung 840 Evo 250 GB ve daha eski bir Micron P400E 100 GB idi.
  • Yapı 1'in yükseltilmiş versiyonu olan Yapı 2. Artık 4,0 GHz'e hız aşırtmalı Intel i7-5960X, 32 GB DDR4-3200 RAM, Samsung SM951 512 GB AHCI m.2 SSD ve önceki iki SSD'yi destekliyor. Bunun için tüm yapı özellikleri PCPartPicker'dadır.
  • Yeni bir kullanıcı yapısı olan Build 3, 4,2 GHz'e hız aşırtmalı Intel i7-5820K, 16 GB DDR4-2400 ve RAID0 (şeritli) yapılandırmasında 2 Samsung 840 EVO 120 GB içeriyordu.
  • Build 4, normal hızlarda Intel Xeon E3-1270 v5, 32 GB DDR4-2133, Samsung 950 Pro 512 GB NVMe m.2 ve RAID5 dizisinde 4 SATA Samsung kurumsal SSD içeren yeni bir sunucu yapısı.

Bunlara baktığınızda hangisinin en düşük yapım süresini elde ettiğini düşünürsünüz? Peki ya ikincisi? Beni şok eden şey, en düşük yapım süresini alan ikinci konfigürasyon değildi; üçüncü konfigürasyondu. CyanogenMod 13.0'ı oluşturmak 14 dakikanın biraz altında. Yani kesinlikle hakim olan CPU ikinci sırayı alacaktır, Sağ? Yine yanlış. Testini yeni bitirdiğim Derleme 4, 25 dakikadan biraz fazla sürdü! Yalnızca şu anki kurulumumun durduğu yer burası; çekirdeklerin ve iş parçacıklarının yarısına sahip ancak 3 SSD'den oluşan bir SSD dizisine sahip bir sistemden 2 dakika daha yavaş, oysa SSD'lerim bağımsızdı. SM951'in çok ısınması durumunda kısma sorunları yaşadığı da biliniyor; bu, bu durumda çok gerçek bir faktör olabilir. İlk ve en yavaş derleme yaklaşık 30 dakika sürdü; CM 13.0'ı kurduğum tek zamanlardan biriydi; 27'de bunu yapan benzer yapı konfigürasyonlarını duydum.

SSD'ler de eskiden elde edilmesi zor bir ürün olduğundan konu hakkında çok az tartışma vardı. Ancak geçtiğimiz yıl hem perakende hem de ikinci el pazarlarında fiyatlar önemli ölçüde düştü. 120 GB'lık SSD'lerin artık 50 doların altında olması, bir zamanlar sisteme bir tane eklemenin önündeki engel değil. Geleneksel sabit diskler de aynı işi görecektir, ancak SSD kullanmıyorlarsa kullanıcıların bu darboğaza diğerlerinden önce ulaşma olasılıkları daha yüksektir.

CPU UykusuİŞLEMCİ: Yukarıda en büyük darboğazın disk G/Ç olduğunu söylediğimde, her zaman böyle olmayabilecek bir varsayım ortaya çıkıyor - kullandığım yapıların her birinde Intel Core i7 bulunuyordu. Ancak Xeon sunucusunda bulduğum gibi, disk buna ayak uyduruyor ancak en ağır derleme süreçlerinde 8 CPU iş parçacığının tamamını yüksek kullanımda tutuyor. Ve ne kadar denersem deneyeyim, yukarıda bulduğumuz RAID dizisi olmadan Haswell-E'min yapım sürecinin çoğunda tam olarak kullanılmaya yaklaştığını bile düşünmüyorum. Yani inşaat paranızın karşılığını en iyi şekilde almak istiyorsanız Intel i7-5820K'yı düşünün.

Doğru, bu X99 ve dolayısıyla anakart Z97 anakartından daha pahalı olabilir; ama aynı zamanda hala X99 döngüsünün birinci yılındayız. Broadwell-E fiyatlarının da piyasaya sürülmesinden sonra Haswell-E'ye benzer kalması bekleniyor, bu da şu anlama geliyor: meraklı segmentine i7-4790K ile neredeyse aynı fiyata satın alabilmeniz gerekir veya i7-6700K.

Şu anda Intel'de 5820K'nın ötesine geçmek için fazla bir neden yok çünkü onunla etkileyici yapım süreleri elde edebilirsiniz. Çoğunlukla, işlemci hızlarıyla birlikte aşağıdaki çekirdek/iş parçacığı sayısı ne kadar yüksek olursa, derleme süresi de o kadar hızlı olur. Geçen yıl GIGABYTE Brix'teki bir i7-4770R bana ortalama 42 dakikalık bir kurulum sağladı. En hızlısı olmasa da ihtiyaçlarımı karşıladı ve özel bir düşük güç yapılandırmasına sahip olmamı sağladı. AMD APU'larında da aynı şeyi göreceksiniz; her ne kadar şu anda Intel'deki muadilleri kadar iyi performans göstermeseler de, işi kolayca halledecekler ve genellikle Intel'i satın almaktan daha düşük bir fiyatla yapacaklar. Bu benim yakından takip ettiğim bir durum çünkü eğer söylentiler doğruysa Zen tabanlı APU'lar bu açığı önemli ölçüde kapatabilir.

Bu darboğazları ortadan kaldırmayı tercih edenler için, ofisten çok ev kullanıcıları için geçerli olan bir sonuç var. Bu darboğazlar ortadan kaldırıldığında sistemin genel performansı artacaktır. Özellikle oyuncular, bu darboğazları gidermek için yükseltme yapmanın neredeyse her durumda oyun performansını da artıracağını göreceklerdir. En hızlı derleme süresini kazanmamış olsa da, bu ikinci derleme beklenmedik bir sürprizle karşılaştı: 30 saniyelik yükleme süresi. Sadece Neden 3 birçok kişi dakikalar içinde yükleme sürelerinden şikayet ederken. Sonuçta bu yapım süreleri gerçekten çok yüksek ve çoğu kişi için aşırıya kaçabilir... ancak en azından artık daha fazla çekirdeğin daha hızlı kurulum anlamına geleceği argümanı nihayet sona erdi.

Bu sadece bir başlangıç ​​olduğundan, okuyucuların katılıp çeşitli konfigürasyonlara ilişkin yapım deneyimlerini paylaşacaklarını umuyoruz. Bir okuyucu olarak bu tür konular hakkında daha fazla tartışma görmek ister misiniz? Aşağıdaki yorumlarda ses kapalı!