8 berichten aan het bekijken - 1 tot 8 (van in totaal 8)
  • Q:
    Bijdrager
    silvercircle

    Meer dan 4Gb = minder swap?

    Een wat technische vraag:
    Soms als je meerdere (32 bits) programma’s draait die veel geheugen nodig hebben wordt er vaak lang geswapt. Meestal als je wisselt van programma.

    Er zit al 4Gb geheugen in de computer (Mac Pro) dus de limiet voor 32 bits applicaties is bereikt.
    Indien je dan nog wat geheugen plaatst tot bv 6Gb, zal er dan minder geswapt worden?
    Zal dat extra geheugen eventueel gebruikt worden door het os om zo te swappen ipv naar de harde schijf?
    Misschien een domme vraag maar ik heb hier totaal geen idee van.
    We spreken dus niet over Leopard en 64 bits applicaties maar over Tiger en 32 bits applicaties.

    Enige opheldering of nuttige links zijn welkom.

    Dank

    Bijdrager
    Marius1976

    Ik vind het een heel goede vraag. Ik heb me hier laatst ook al mee beziggehouden. Mijn gevoel zegt dat het inderdaad wel zo werkt, maar helemaal zeker ben ik er ook niet van.

    In theorie zal het sowieso wel zo werken, maar ik heb wel eens de indruk dat sommige programma’s niet helemaal ‘netjes’ geprogrammeerd zijn en daardoor onnodig geheugen vasthouden -ook als ze op inactief staan-

    Ik denk dat wanneer je meer geheugen bijprikt dit probleem kortstondig (wellicht de eerste paar minuten/kwartieren van gebruik na opstarten) verholpen is, maar naarmate je die geheugenvreters langer gebruikt (en dan bedoel ik bijvoorbeeld een hele middag) dat je vrije geheugen toch helemaal weer versnipperd is, en ook niet volledig/lekker vrij komt, en dat er dan toch weer geswapped wordt.

    Bovenstaande is theorie van de ‘koude grond’ … maar wel mijn gevoelsmatige ervaring.

    Groet
    Marius

    p.s. als ik overigens op mijn iBook G4 (1GB) met Logic werk en naar een andere toepassing switch gaat, wordt er wel veel meer gerommeld binnenin dan wanneer ik dat op mijn iMac G5 met 1,5 GB doe. Maar of dat nou aan die halve GB meer ligt..

    Bijdrager
    iJoost

    Ik heb het wel eens vaker uitgelegd (en daar zou je even naar kunnen zoeken) maar heel in het kort en heel to the point, als volgt:

    Kijk, tijdens het soort gebruik waar het je om gaat, naar de page outs. (En dat kun je bijvoorbeeld zien door top -u te tikken in Terminal (q om weer te stoppen).) Dan zijn er in feite drie mogelijkheden:

    1) De page out teller blijft op nul staan. Dan heeft het geen zin om extra geheugen toe te voegen.

    2) De page out teller loopt zo af en toe even op (bijvoorbeeld bij het starten van een programma of het openen van een bestand) maar is verder stabiel. Dan levert het wel iets op om extra geheugen toe te voegen maar heel veel zul je er niet van merken.

    3) De page out teller loopt regelmatig of zelfs voortdurend op. Je hebt dan echt te weinig geheugen voor wat je aan het doen bent. Als je voldoende geheugen toevoegt om naar situatie 2 of 1 te gaan zul je merken dat je computer stukken sneller wordt.

    Moderator
    unSOUND

    Het ligt er aan hoeveel je hebt. Als ik mijn Mac een paar dagen aan laat staan en van alles start en weer sluit, zit ik meestal op 2,5 GB aan Ram wat in gebruik of gereserveerd is. Ik heb zelf 4 GB aan Ram, en mijn page-outs zijn dan ook vrijwel nihil. Een deel zal je altijd houden, omdat OS X nu eenmaal is geprogrammeerd om bepaalde zaken uit het Ram weg te schrijven naar de scratch-disk…

    Bijdrager
    Oppie

    [size=9:090c09f72e]Bijdrage weggehaald door mij vanwege te weinig relevantie aan de TS vraag.[/size:090c09f72e]

    Bijdrager
    silvercircle
    ”iJoost”

    Ik heb het wel eens vaker uitgelegd (en daar zou je even naar kunnen zoeken) maar heel in het kort en heel to the point, als volgt:

    Kijk, tijdens het soort gebruik waar het je om gaat, naar de page outs. (En dat kun je bijvoorbeeld zien door top -u te tikken in Terminal (q om weer te stoppen).) Dan zijn er in feite drie mogelijkheden:

    Ik denk dat je mijn vraag niet echt begrepen hebt.

    Ik weet best dat in mijn geval meer geheugen zou kunnen helpen. De page out teller doet in die gevallen niets anders dan oplopen.

    Maar ik zit al met 4Gb en dus zit je aan de limiet van adressering van 32 bits programma’s.
    Dus, neem dat je 2 32 bits programma’s draait die elk 4Gb nodig hebben en je steekt 16Gb in je Mac. Zullen beide programma’s dan in je geheugen blijven of kan dit niet?
    Of zal er in dit geval enkel in het geheugen geswapt worden tussen de eerste 4Gb en de overige 12?
    Dus, ipv op schijf te swappen binnen het geheugen swappen als swappen dan nog nodig is?
    Zulke programma’s kunnen enkel draaien in de onderste 4Gb omdat ze 32 bits zijn denk ik.
    Ik krijg moeilijk uitgelegd wat ik bedoel maar hopelijk begrijp je me nu.

    Bijdrager
    iJoost

    Ah, nu begrijp ik je beter. Een goed vraag inderdaad. Maar hij overstijgt mijn parate kennis. Mocht iemand het wel weten dan ben ik ook benieuwd.

    Ik zou verwachten dat de 32 bits adressering niet onmogelijk maakt om voor meer dan een programma effectief meer dan 4 Gig fysiek te gebruiken. Maar hoe dat echt zit hangt af van de beperkingen van hard- en software waarmee virtuele adressen vertaald worden naar echt beschikbare geheugenblokken. Ik weet het zo niet.

    Probeer het anders eens op slash dot of ars technica daar hangt tussen de vele grappenmakers ook regelmatig wat volk rond dat verrassend onderlegd (en leerzaam) uit de hoek kan komen.

    Bijdrager
    madcat

    Ik weet niet precies hoe het onder OSX werkt, maar Windows NT kan voor elk proccess direct 4GB adresseeren. Elk process werkt met een bepaalde offset waar dat process maximaal een blok van 4Gb kan adresseren.
    Met andere woorden als je 16GB geheugen hebt dan kan je 4 processeren draaien die elk 4GB geheugen in beslag kan nemen voordat windows gaat swappen.

    Ik kan me indenken dat OSX ongeveer op dezelfde manier werkt en het klinkt ook logisch, waarom zou je anders meer dan 4GB geheugen in een server zetten?
    OSX heeft juist de eigenschap om zo veel mogelijk “echt” geheugen te gebruiken voordat hij gaat swappen.

    Echter als je photoshop open hebt staan waarbij je 2 enorme grote bestanden hebt geladen, dan kan het zijn dat photoshop wel een deel gaat weg swappen.
    Echter als je photoshop en final cut pro open hebt staan dan wordt er niet geswapt.

    Maar je kan voor de zekerheid het even vragen bij een apple shop.

8 berichten aan het bekijken - 1 tot 8 (van in totaal 8)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.