Çok fazla takasınız olabilir mi?


16

Sadece çok büyük bir takas bölümüne sahip olup olamayacağınızı merak ediyordum. Evet ise, takas bölümü ne zaman çok büyük? Çok büyük bir takas bölümüne sahip olmanın olumsuz yanları / kötü etkileri nelerdir (bol miktarda disk alanım olsa bile)?

Hayır ise, önerilen takas alanından daha fazlasına sahip olmanın faydaları nelerdir?


5
Görünen dezavantaj, disk alanını boşa harcamanızdır. OTOH: "çok fazla" takasınız varsa (4GB'lık bir sistemde 30GB), yanlış davranan uygulamalar daha sonra bellek yetersiz kalır ve bu da sisteminizi yavaşlatır. Düzenli davranan uygulamalar (bellek sızıntısı olmadan) bunu kullanmaz. (Kabul ediyorum, bu basitleştirilmiş bir görünüm.)
PerlDuck

@PerlDuck - katılıyorum - "çok fazla takas" sadece disk alanı kullanır. Sistem takas kullanmaya başlarsa yavaşlar, bu durumda daha az uygulama, daha hafif uygulamalar çalıştırın veya daha fazla RAM alın
Panther

Biliyorum, eğer yeterli RAM'iniz varsa, o zaman çok fazla disk alanı kullanan herhangi bir dezavantajı var mı? PerlDuck'un dediği gibi offcourse "yanlış davranış" uygulamaları hariç.
15'te An0n

1
VTD Edit'deki tüm sorular, yinelenen durumdan kapalı konuya değişen yakın nedeni haklı çıkarıyor. OP açıkçası miffed ama meta veya sohbet odası tartışma için daha iyi bir yer.
WinEunuuchs2Unix

3
İnsanların @PerlDuck'un (ve Panther) ne hakkında konuştuğundan emin olmaması durumunda, etkin bir şekilde sınırsız disk alanınız olsa bile, takas etmek için daha fazla alana sahip olmanız , yalnızca sonlandırılması gereken ve aksi takdirde hızlı bir şekilde gerçekleşecek işlemleri yapacak otomatik olarak sonlandırılırsa, sistemi uzun süre önce taramayı yavaşlatın . PerlDuck'un yorumu bence bir cevap olarak da işe yarayacaktır. Eğer bu soruyu tekrar açarsak, belki de gerekenden çok daha fazla takas olmanın sakıncaları hakkında bir cevap eklenebilir. Çünkü sakıncaları var.
Eliah Kagan

Yanıtlar:


8

Hayır

İlk bakışta çok fazla takasınız olamaz çünkü takas RAM'i artırmanın bir yolu olarak görebilirsiniz. Aslında değil artırmak RAM'i , sadece şöyle yapar: 8 GB gerçek RAM'iniz ve örneğin 24 GB yapılandırılmış takas alanınız varsa, programlarınız 8 + 24 = 32 GB'a kadar bellek ayırabilir ve kullanabilir ilk başta kulağa hoş geliyor.

Fakat

Bellek sızıntısı olan veya 8 GB bellekle çalışmak için gerçekten yapılmayan uygulamaları çalıştırırsanız (örneğin video düzenlemeyi düşünün), bu uygulamalar bu takas alanını kullanmaya başlar ve takas yavaştır. Bu uygulamalar tarafından aktif olarak takas alanı ne kadar fazla kullanılırsa, sistem sadece belleği diske ve diske taşımakla o kadar meşgul olur. Bu, genel sistemin yanıt verebilirliğini büyük ölçüde yavaşlatacak ve kötü bir kullanıcı deneyimine yol açacaktır.

Sonunda - takas alanı tükendiğinde - bazı uygulamalar bellek yetersiz bir durumla karşılaşır ve çekirdeğin OOM_Killer'i tarafından öldürülür .

Gönderen wiki :

Modern bilgisayarlardaki tipik OOM durumu, işletim sistemi daha fazla sanal bellek oluşturamadığında gerçekleşir, çünkü tüm potansiyel destek aygıtları doldurulmuştur.

Sonuç

Bu nedenle, sahip olmanın bir dezavantajı çok fazla takas alanına : ne kadar fazla olursanız, bu OOM durumu daha sonra ortaya çıkar ve daha uzun bir gecikme ve yanıt vermeyen sistemden muzdarip olmanız gerekecektir.

Tabii ki bir diğer dezavantaj, disk alanını boşa harcamaktır, ancak bu günümüzde çok önemli olmayabilir.


Kenar kasasının dikkate alınması için +1. Kişisel olarak, hazırda bekletme ayılar için olduğundan ve sistemlerim bunun için çok meşgul olduğundan büyük bir takas hayranı değilim. ;-) Şerefe.
Elder Geek

@ElderGeek LOL. Aslında Eliah Kagan basit yorumumu bir cevaba dönüştürmemi sağladı. Beni çok fazla takas yapmanın dezavantajının çok önemli bir şey olduğuna ve başkaları için önemli olabileceğine ikna etti. Ben seninleyim ve yapılandırılmış küçük takası var (8GB RAM ile 2GB) ve neredeyse hiç dokunulmaz.
PerlDuck

Benzer ayarlarla benzer sonuçlar aldım, keşke 2x takas söylenti sonunda ölecekti.
Elder Geek

5

Geniş takas alanına doğrudan bir dezavantaj yoktur. Çekirdek tarafından yönetilme biçimiyle, takas alanı miktarının yeterli olanın üzerinde bir artış, performans üzerinde hiç ya da önemsiz bir etkiye sahiptir.

“Çok fazla” takas alanının tek dezavantajı, bu alanı depolama için kullanamamanızdır.


1
@ An0n: Şu anda makineme bağlı olan ~ 6 TB'nin tamamını takas alanı olarak ayırmanın oldukça büyük bir dezavantaj olacağını düşünüyorum. Tüm müziklerimi nereye koyardım…?
David Foerster

2
@ An0n: Yapabileceği tek şey önyükleme yapmak ve daha sonra yararlı veri depolamamaksa bir bilgisayar ne işe yarar? Kulağa pahalı bir ısıtıcı gibi geliyor.
David Foerster

1
@ An0n: Elbette, ben de öyle varsaymıştım ama amacını kaçırıyorsun. Bir bilgisayarın kullanışlı olması için kullanılabilir bir sistem durumuna (önyükleme dahil) erişebilmesi ve kullanıcının kişisel verileri için kullanabileceği depolama alanına erişebilmesi gerektiğini kabul edebiliriz. Bu, takas alanı tarafından işgal edilmemesini gerektirir .
David Foerster

2
Tabii ki göreceli. Tıpkı "çok fazla" göreli olduğu gibi. Önyüklenebilir bir sistemim varsa ve tüm boş alanımı takas alanı olarak ayırırsam, sistem yapılandırmasını daha fazla boş alanla bitecek şekilde değiştirene kadar boş alan olmaması nedeniyle artık benim için kullanışlı değil. Bu anlamda takas alanı o zaman "çok fazla" olurdu, bu zaman zarfında sistemi işe yaramaz hale getirir. Her neyse, seninle kelimelerin anlambilimini tartışmak için burada değilim.
David Foerster

1
@ An0n Bu noktanın altını çizmek için, takas alanı başka hiçbir şey için kullanamayacağınız alandır. Disk depolama alanı maliyetlidir. Disk alanınız sınırlıysa (benimki sadece 32 GB), program yüklemek ve dosyalarınızdaki müzik gibi dosyaları yazmak için mümkün olduğunca fazla tutmak istersiniz. İnsanlar genellikle bu sebeple takaslarını asgariye indirmeye çalışırlar, başka bir sebep yoktur. Takas, sistemin verimli bir şekilde çalışmaya devam etmesi için ihtiyaç duyabileceği bir şeydir, aksi takdirde kullanıcı için değeri yoktur. Genel olarak, sistemimizin sadece gerekli kaynakları kullanmasını ve oynamak için bolca bırakmamızı istiyoruz.
Zanna

4

Diskinizde daha az alan dışında başka bir olumsuzluk hissetmeyeceksiniz, sanırım günümüzde 2x'lik kavramın çoğu sistemde koç miktarının modası geçmiş olduğunu düşünüyorum. Genellikle RAM'in değişken doğası nedeniyle herhangi bir veri kaybetmeden bilgisayarınızı hazırda bekletme fırsatı vermek için olsa da dizüstü bilgisayarlarda takas belleği için raminizin aynı boyutunu kullanmanızı öneririz.

Takas bölümü için RAM boyutunun 1 katından fazla kullanmayı düşüneceğim tek durum, RAM boyutunuzu kısa sürede yükselteceğinizi düşündüğünüz zamandır. Ya da aynı anda kullanılmayan programlar tarafından kullanılan bellek miktarını bir tür önbellekte saklayacağınız bir sistem kullanmayı planlıyorsanız.

Umarım amacım yeterince açıktı ve tekrarlıyorum, çok fazla takas hafızasına sahip olduğunuz için herhangi bir sorun yaşayacağınızı sanmıyorum.

İyi günler!


2
Tek bir kullanıcı masaüstünde RAM> 2-4 Gb ise takas kullanmıyorum.
Panther

1
@Panther Neden olmasın? Ve nasıl veya ne zaman kullandığınızla ilgili değil. Onun büyüklüğü ve kullanımı hakkında.
An0n


@ElderGeek Merhaba, hayır düşünmedim. Cevabınızı beğendim, bellek sızıntıları problemini bilmiyordum!
zurg

2

Hazırda bekletme modunun gerçekten ne kadar SWAP'a ihtiyacı var?

Hazırda bekletme modunu kullanırken SWAP boyutu için RAM x 2'ye ihtiyacınız olduğu yanılgısıdır. Takas boyutunun Takılı RAM değil kullanılan RAM boyutu olması gerekir . Genellikle takas boyutunun kurulu RAM'in 2 / 5'i olması gerekir. Kullanım için gereken minimum minimum RAM miktarını bulmak için:

$ cat /sys/power/image_size
3153907712

Bu 8 GB RAM makinede hazırda bekletme için minimum 3 GB gerekir.

image_sizeHata riskiyle birlikte daha küçük bir takas boyutu için değerleri değiştirebilirsiniz. Daha büyük bir takas boyutu için ayarlayabilir ve muhtemelen hazırda bekletme hızını artırabilirsiniz.

Referans: https://wiki.archlinux.org/index.php/Power_management/Suspend_and_hibernate


1995'te 16 MB RAM, 2018'de 16 GB RAM için farklı kurallar

16 MB RAM'in olduğu günlerde, 720 MB sabit sürücünüzde 32 MB takas için 2 mantıklı. Bu 1995 Washington Post makalesinde küçük bir RAM ve HDD geçmişi .

23 yıl sonra 1995'ten bazı teknik makaleler (hiç bulamadım da) yeni kullanıcıları yanıltmış olabilir. Ancak SWAP = RAM x 2 öneren bir 2007 makalesi buldum .

1995 yılında geri döndü 32 MB 760 MB HDD'nin takılması HDD'nin% 4'ü idi. Gerçekten de takas bölümü 1995'te çok kullanılmış olabilir. Bugün 2018'de, 256 GB SSD'nizdeki 32 GB SWAP için 16 GB RAM x 2, SSD'nin% 13'ünü aldığı ile aynı mantıklı değil. Bugün 8 GB SWAP bölümüm, OOM-Killer'i test ederken doldurmaya zorlamadığım sürece hiç kullanılmıyor: Google Chrome, belleğimi bilgisayarımın neredeyse durma noktasına geldiği noktaya götürecek. Bunu önlemek için ne yapabilirim? .


Toplam lapa olan sık sık 2x kuralının yanlış anlaşıldığını belirtmek için +1.
Elder Geek

@ElderGeek Teşekkür ederim. 32 MB SWAP için 16 MB RAM çarpı 2'nin mantıklı olabileceği bir tarih bölümü ekledim.
WinEunuuchs2Unix

Dikkate alınması gereken başka bir şey de SSD ve HDD. SSD'nin bu bölümünde başarısızlığa daha hızlı getiren bol miktarda okuma / yazma istiyor muyuz (yoksa bu bir efsane mi?) Sistemimde 32GB ram SWAP için 2GB velociraptor Drive kullandım, ancak hazırda bekletme için bir niyetim yok, yine de bu iyi olup olmadığından emin değilim, muhtemelen hiçbir takasım olmasaydı ??? Ama hazırda bekletiyor olsaydım belki 4GB yeterli olurdu, ama şansım 20GB tarayıcı kullanıyordum ve sonra 4GB yeterli olmaz mı ???
NZ Dev

@NZDev SSD üzerinde takasım var ama nadiren kullanılıyor. Son kontrol ettiğimde, 1 yıllık kullanımdan sonra hala% 100 ömür kaldı. Kalan
WinEunuuchs2Unix

1

SWAP nedir:

Linux'ta takas alanı, fiziksel bellek (RAM) miktarı dolduğunda kullanılır. Sistemin daha fazla bellek kaynağına ihtiyacı varsa ve RAM doluysa, bellekteki etkin olmayan sayfalar takas alanına taşınır. Takas alanı az miktarda RAM'e sahip makinelere yardımcı olabilirken, daha fazla RAM'in yerini alması düşünülmemelidir. Takas alanı, fiziksel bellekten daha yavaş erişim süresine sahip sabit sürücülerde bulunur.

Takas alanı özel bir takas bölümü (önerilen), takas dosyası veya takas bölümleri ile takas dosyalarının bir kombinasyonu olabilir.

Takas 2x fiziksel RAM'e eşit olmalıdır.


Avantajları:

Belleğiniz tamamen dolduğunda taşma alanı sağlar Nadiren gerekli olan öğeleri yüksek hızlı belleğinizden uzağa taşıyabilir Hazırda bekletme moduna geçmenizi sağlar

Dezavantajları:

SWAP bölümleri dinamik olarak yeniden boyutlandırılmadığından sabit sürücünüzde yer kaplar Sabit sürücünüzdeki aşınma ve yıpranmayı artırabilir Performansı artırmaz (aşağıya bakın)


SWAP Bölümleri, "fazladan depolama alanına kıyasla layık değil" ifadesinde olduğu gibi "Yardım Etme" durumunda:

Sabit Sürücünüzde yalnızca 5400 RPM varsa ve çok az RAM'iniz varsa> 2GB diyelim. Neden ? Sistem sürekli olarak SWAP bölümüne erişmek istediğinden, sonunda çok yavaş olacaktır. Artık bellekte yer olmasına rağmen, SWAP bölümündeki her şeyin geri taşınması gerekiyor. Sistem yavaşlayacağından, tahsis SWAP bölümünde kalır. Bu yalnızca bir yeniden başlatma ile düzeltilebilir. Sistem kapanmadan önce SWAP bölümünden her şeyi kaldırması gerektiğinden, yine de biraz zaman alacaktır.


** Sonuç: **

Eğer muktedir isterseniz hazırda bekleme bilgisayarınızı, o zaman bir SWAP bölümü olmalıdır. Bu bölümün boyutu, yüklü belleğinizin boyutu ve ayrıca SWAP bölümüne taşınmış olan tüm öğeler için yer bırakmak için% 10-25 ek olmalıdır.

Sadece küçük bir performans artışı istiyorsanız (ve en az 7200 rpm sabit sürücünüz varsa), isterseniz bir SWAP bölümü ekleyebilirsiniz, ancak 4GB'tan daha az yüklü belleğe sahip değilseniz gerekli değildir. Bunun boyutu ne istersen olabilir. Ancak tam olarak 2x RAM öneriyoruz. Yeterli depolama alanınız varsa.

5400rpm sabit sürücünüz varsa, darboğaz bilgisayarınızı daha da kötüleştireceğinden bir SWAP bölümü oluşturmamalısınız. Ancak, kesinlikle SWAP'a sahip olmak istiyorsanız, yine de yukarıda belirtilen aynı boyutlandırma kurallarını kullanarak bir bölüm oluşturabilirsiniz - ancak swappiness değerini daha düşük bir değere değiştirin.



Benim fikrim:

Bununla birlikte, günlük kullanım için Ana işletim sisteminiz olarak Ubuntu kullanıyorsanız , RAM'in 2 katını tavsiye ederim . Çünkü Ubuntu'yu sadece eski bir bilgisayarınız olduğu için kurmuyorsunuz. Ancak sistemi Ana İşletim Sisteminiz olarak kullanmak istediğiniz için.

Aksine, sistem bölümlerini çalışır durumda tutmak için ayarlamak yerine gerekirse ekstra donanım satın alın. Bir oyun satın alırsanız, ayarları "Oynatılabilir" yapmak için ayarlamak yerine sisteminizin "güncel" olduğundan da emin olursunuz.

Çok kısa yerine daha fazla alana, SWAP'a, hıza, güce sahip olabilirsiniz veya daha sonra her şeyi yeniden boyutlandırmanız gerekir. SWAP veya alana ihtiyacınız olduğu için RAM mi aldınız? Veya bir bellek yuvası veya çubuk kırıldığı için ram hızlı satın almanız gerekir.


Re: Sonuç Sadece mantıklı değil, ya da koymak için başka bir yol nerede çizgi çizmek olduğunu. örneğin RAM 8GB artı 16GB takas: 8GB RAM ve 9GB takas kullanırsam, hazırda bekletmeye yetecek kadar yer kalmaz. Öyleyse ne veriyor? Başka bir deyişle, hangi boyutta olursanız olun, yine de hepsini ve daha fazlasını kullanabilirsiniz. Öyleyse Swap dosyasına neden 2 ayrılmış alan 1 Sanal bellek ve diğeri hazırda bekletme alanı olarak toplamı veya diğeri 2 verilmiyor. Sadece benim için birikmiyor ve hiç kimse bu soruyu cevaplamadı.
NZ Dev

0

Gerçekten bir ek yük var, ama çok küçük; diskteki her "sayfa" için bir referans sayacı vardır ve her takas alanı ile ilişkili birkaç yapı vardır; bu çekirdek belleğinde, bu yüzden sayfalanamaz. Mimariye bağlı olarak her 4 GB'de 2 ila 16 MB arasındadır. Geri kalanı oldukça dinamiktir, bu nedenle kullanıma bağlıdır.

Yani bol miktarda olabilir, ancak sayfalanmış adres alanının kendisinin RAM üzerinde bir miktar yük oluşturduğunu ve bunun yanı sıra takas edilen sayfalar için bazı izleme işlemleri olduğunu unutmayın, bu yüzden çok fazla ölçeklenmez; biraz ek yük uygulasa bile, vfs yapısal bilgileri diske yükleyebileceğinden (normalde en azından sayfa tabloları donanım sınırlamaları nedeniyle değiştirilemediğinden, dosya sistemleri takas alanlarından çok daha verimlidir ve vmm büyük olasılıkla tüm defter tutma için değiştirilemez bellek kullanıyor).

Başka bir dezavantaj düşünemiyorum, çok az takas olan OTOH, sayfaları değiştirirken parçalanmaya neden olabilir, bu da daha fazla arama anlamına gelir. Çok şey olduğunda, belirli bir noktadan sonra da herhangi bir gelişme olmayacaktır.

Takas genellikle son bir kaynaktır (hazırda bekletme kenarı), bu nedenle RAM'den daha fazla takas alanından, özellikle 4GB'dan fazla RAM'iniz varsa ve bazen RAM çok büyük olsa bile (muhtemelen 64 GB) fazla faydalanmayacaksınız. .


Maalesef son ifadeniz / cümleniz kafa karıştırıcı, aksi takdirde yukarıdakilere iyi bir eklenti.
NZ Dev

@NZDev şimdi daha iyi mi?
Ismael Luceno
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.