Entegre VRAM, Etkinlik Monitörünün `kernel_task` RAM'ine dahil mi?


11

Mac OS X çekirdeğinin 750MB RAM kullanabileceğini keşfetmeye şaşırdım . İlgili birkaç soru:

sorunu biraz açıklığa kavuşturdu, ancak bir soru kaldı: yerleşik tümleşik grafikler için video belleğinin çekirdek tarafından da kullanıldığı işaretlendi .

Gerçekten doğru mu? VRAM, Etkinlik Monitörü tarafından gösterilen sayıya dahil kernel_taskmi?


Bir not olarak, Çekirdek için 750 MB ram gösteren ekran görüntüm MacBook Pro, Retina, 13 inç, 2013'ün başlarında, sadece GPU ve CPU 2,6 GHz Intel Core i5 olan "Intel HD Graphics 4000 1024 MB" idi . Kaçmaya çalışacağım sysdiagnoseve temel sorunuzu çözüp çözemeyeceğimi göreceğim.
bmike

@bmike: Yani, 1GB VRAM'a sahip olduğunuzdan ve kernel_task"yalnızca" 750MB kullandığından , 750MB'ların hepsinin VRAM'den değil normal RAM'den geldiğini tespit ettik. Sağ?
sds

Çekirdek tarafından alınan 1.8GB'ım var, bu kötü mü?
Render

Yanıtlar:


3

Hangi Mac OS X sürümünü kullanıyorsunuz?

kernel_taskMac OS X 10.9 Mavericks Intel HD4000 sistem RAM grafik ve 16GB entegre ile benim 2012 MacBook Pro'nun (non-Retina) üzerinde RAM 1,07 GB sürer. Evet, bu tamamen gerekli. Daha fazla fiziksel RAM'iniz varsa, Mac OS X kernel_tasksistemin en iyi şekilde çalışmasını sağlamak için çok şey kullanır .

Mac OS X'in yıllar boyunca her yeni sürümünde, Mac OS X'i kernel_taskçalıştırmak için daha fazla bellek gerekiyor.

Mac OS X 10.8 Mountain Lion çalıştırıyorsanız Tecrübelerime göre, Mac sahip olması gerekir daha (sürekli sabit disk üzerinde swapfile kullanmaya gerek OS, alçaltır performans hız olmadan) optimal çalışmasına sistem 4GB RAM. Artık Mac OS X 10.9 Mavericks'i etkili bir şekilde çalıştırmak için Mac'inizin 6GB'dan fazla RAM'e ihtiyacı olduğu anlaşılıyor .

Microsoft Windows 8.0 ve 8.1 için gereken RAM miktarı karşılaştırılabilir. Bu, 2013'teki en yeni kişisel bilgisayar işletim sistemleri için gerekli olan şey.

Birçok sistem işlevinin altında kernel_taskçalıştığını ve Mac'inizde nelerin çalıştığının listesinin Mac'inizi ne için kullandığınıza bağlı olarak değiştiğini lütfen unutmayın .

2011'de CNet'ten " OS X'te RAM alan Kernel_task " da iyi bir açıklama buldum .

... düzenli olarak birkaç yüz megabayt gerçek RAM kullanacak ve sistem kullanımıyla RAM kapladığı alanı artıracak "kernel_task" adlı başka bir işlem göreceksiniz.

OS X'teki çekirdek, süreçlerin ve programların ihtiyaç duyduğu kaynakları işlemekten sorumlu olan yazılım mimarisidir. Bunlar arasında çoklu görev zamanlaması, sanal bellek, sistem giriş ve çıkışı ve işlemler arasındaki çeşitli iletişim rutinleri bulunur. Ayrıca, çekirdek, Bluetooth ve Wi-Fi, grafik işlemcileri, üçüncü taraf donanımı, çevresel aygıtlara erişim ve özel dosya sistemi gibi özelliklerin sistem düzeyinde yönetimini sağlamak için çekirdek uzantılarını (kexts) yükleyerek değiştirilebilir ve gelişmiş işlevsellik sağlanabilir destek. Özünde, çekirdek donanımınızı çalıştırmaktan ve donanım kaynaklarını uygulamalar ve sistem hizmetleri için kullanılabilir yapmaktan sorumludur.

... "kernel_task" işlemi büyük miktarda sistem belleği gerektirebilir. Sistem başladığında, çekirdek uzantıları yüklü olsa bile, tüm hizmetler etkin değildir. Sistem bunları kullanmaya hazır olabilir, ancak gerekinceye kadar tam olarak yüklenmez. Bu nedenle, başlangıçta sisteminizi başlatır ve Etkinlik Monitörünü kontrol ederseniz, kernel_task işleminin nispeten az miktarda RAM kullandığını görebilirsiniz. Daha sonra sisteminizi kullanmaya ve iSight kameranız, Wi-Fi servisleriniz, GPU'larınızı değiştirme ve harici aygıtlar gibi özellikleri etkinleştirmeye başladığınızda, kernel_task bu cihazlar için kaynakları kullanacak ve boyutu büyüyecektir.


2
bu VRAM hakkında sorduğum asıl soruya nasıl cevap veriyor?
sds

Sorunuzun orijinal ifadesinin okuduğumda "kernel_task altında neler var?" Olduğuna inanıyorum. ve cevaplamaya çalıştığım da buydu. O zamandan beri, sorunun başlığını yeniden yazdınız.

2
Üzgünüm sorum kafa karıştırıcıydı. Bir çekirdeğin ne olduğunu biliyorum ve sorum, bellek kullanımı raporlaması hakkındaydı.
sds

2

Sanırım, dahil. Iris ile bir MBP 13 "2015 var ve ayrıca çok fazla bellek alan kernel_task, durumu araştırıyordum ve muhteşem bir zprintkomut keşfettim . Çekirdek bellek bölgeleri kullanımını yazdırıyor, en fazla 2 alan alıyor benim için bellek:

  • com.apple.iokit.IOAcceleratorFamily2 - 758044K
  • vm.pages.array - 221204K

Ne yazık ki, IOAcceleratorFamily2 hakkında güvenilir bilgi bulamadım (ve vm.pages.array hakkında herhangi bir bilgi bulamadım), ancak ad, G / Ç ve hızlanma ile ilgili bir şey yapması gerektiğini gösteriyor. Sanırım bu bilgi, hafızanın bir parçası, video hızlandırmasından sorumlu ve Iris'in görüntü işleme ihtiyaçlarına adanmış.

Bir ekran kaydına ve iki 4K youtube videosuna paralel olarak küçük bir test yaptım: com.apple.iokit.IOAcceleratorFamily2 birkaç saniye içinde 1.1G'ye yükseldi ve kaydı ve videoları durdurduktan sonra 630M'ye düştü . Bu yüzden, bence, VRAM'den sorumlu olması çok muhtemel.


Yani neredeyse gigabaytlık RAM miktarını azaltmanın bir yolu yok mu? Video yonga setinin ayrı bir belleği olmamalı mı? RAM'den en az 800MB almak bir suçtur :(
Kamafeather
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.