Fråga:
Är det möjligt att lägga till RAM i Raspberry Pi?
Dortík
2016-04-29 15:34:10 UTC
view on stackexchange narkive permalink

Är det möjligt att lägga till RAM till en Raspberry Pi?

Möjlig duplikat av [Är det möjligt att installera ett större RAM-chip på Raspberry Pi?] (Http://raspberrypi.stackexchange.com/questions/12381/is-it-possible-to-install-a-larger-ram- chip-on-the-hallon-pi)
Taggen säger "pi-2" som har annan hårdvara än den tidigare pis, och ramchipet är faktiskt separat. Jag har uppdaterat din fråga för att bättre återspegla taggen, men återvänd gärna och ta bort taggen om du inte bara talar om PI 2.
@Jacobm001 Eftersom Pi 2 inte släpptes när det inlägget gjordes, tror jag att denna fråga kanske inte är en duplikat.
@AdamDavis Det borde ha nämnts uttryckligen i titeln. Annars är det en duplikat.
Wut? Det är därför du får ha separata svar, fylla i sammanhanget om det behöver.
Sex svar:
goobering
2016-04-29 15:38:27 UTC
view on stackexchange narkive permalink

Nej Det finns ingen metod genom vilken RAM kan läggas till Pi. Se den här diskussionen på raspberrypi.org-forumen för mer information, men i princip är RAM och CPU oupplösligt anslutna. Det finns ingen fysisk metod genom vilken RAM med fördel kan läggas till, såvida du inte vill börja syra avlägsna CPU-chipet, få ut ditt mikroskop och spåra ett lödkolv med mikrometer.

[Se här] (http://raspberrypi.stackexchange.com/a/31328/5538) för en snabb illustration av hur "oupplösligt anslutna" de är.
Pi 2 har ett separat RAM-chip, och taggen på den här frågan är för Pi 2. Ditt svar är bra för tidigare Pi-versioner, men gäller det för 2?
Jag tittar på det - det verkar verkligen djupt osannolikt. [RAM-chipet] (https://www.micron.com/resource-details/c1ed0482-602f-4e4d-a35a-99ab55ab6e93) är en 168-ball SMD och är lite mindre än min miniatyrbild. Jag kan säga med rimlig säkerhet att det inte kommer att bli kul att försöka få bort det gamla och det nya. joans svar täcker kanske detta användningsfall mer exakt - även om du * kunde * fysiskt hantera chipet, skulle det inte göra någon skillnad. Varje SoC är redan maximerat.
Du kan lägga till en SSD och använda den som byte. Nästa bästa sak.
Att ta bort minneskretsen skulle verkligen vara "inget roligt", men det skulle kunna göras med rätt utrustning och färdigheter (och lättare på pi2 än pi1). Den verkliga frågan är att SoC inte kan stödja något större.
joan
2016-04-29 15:39:26 UTC
view on stackexchange narkive permalink

Nej.

I allmänhet har varje Pi-modell redan utrustats med den maximala mängden RAM som stöds.

Vissa tidiga modeller B hade bara 256 MB och kunde ha haft 512 MB istället. Det skulle dock inte finnas något sätt att uppdatera RAM-chipet utan att förstöra kortet (om du inte hade ett särskilt laboratorium).

Stämmer det också för Pi 3?
@PythonNut Ja, Pi2 och Pi3 har maximalt 1 GB redan installerat.
Inte för att bedöma kantärenden här, men om den nuvarande 1 GB på en Pi3 inte räcker, och du omöjligt kan dela belastningen med en annan Pi3, gör du förmodligen fel ...
Nej, det beror på vad du försöker göra. Om du till exempel vill använda den för vissa serverapplikationer kan det vara helt normalt att ha mer RAM-minne.
Peter Green
2016-04-30 09:58:33 UTC
view on stackexchange narkive permalink

På en 256MB Pi borde det teoretiskt vara möjligt att ersätta chipet med en 512MB men det skulle inte vara lätt. Du måste försiktigt värma upp PoP-stacken och sedan på något sätt skilja processorn från ramchipet. Rensa sedan upp röra av gamla bollar och löd ner det nya ramchipet.

Det finns också frågan om firmware skulle klara, 512MB-modeller har olika ID-koder inbrända i OTP på SoC från 256MB-modeller och Jag är inte säker på om startkoden skulle fungera ordentligt om saker och ting inte matchade.

På 512 MB BCM2835-baserad pis är det inte möjligt att uppgradera, minneskontrollern var utformad för att stödja 1 GB men det fanns ett fel som slutade fungera ordentligt i den storleken.

På hallon pi 2 Mdoel B och hallon pi 3 modell B 1GB är gränsen, designen av bussstrukturen och minneskontrollen i Soc stöder helt enkelt inte mer.

Om vi ​​ser en 512 MB BCM2837-baserad Pi (t.ex. en Raspberry pi 3-modell A) så förväntar jag mig att en uppgradering till 1 GB är teoretiskt möjligt men igen skulle BGA-omarbetning behövas (även om du inte skulle ha det roligt med PoP) och jag vet inte om det skulle finnas firmwareproblem.

JayEye
2016-04-30 11:15:37 UTC
view on stackexchange narkive permalink

Om SoC kunde stödja mer skulle designarna troligen ha inkluderat mer minne, som andra påpekade. Det finns dock en mycket viktigare anledning: kostnadskontroll.

Prisskillnaden, för den typen av del, mellan 512M och 1G är under 1 USD; båda är cirka 5 USD. Till och med en 8G IC i den kategorin är cirka 14 USD, så du kanske tror, ​​big deal, höjer priset lite. Det är inte så enkelt.

De tre säljs för USD40; dess stycklista är förmodligen under $ 15, så även en extra dollar skulle påverka detaljhandelspriset avsevärt, procentvis. Och även om vissa människor kanske köper en dyrare pi för mer pengar, ökar bara kostnaderna för att göra två versioner tillgängliga (design, testning, distribution, lager, etc.), och din $ 40 1G-modell kan behöva sälja för 45 $ istället. Du och jag bryr oss kanske inte, men det gör stor skillnad för utbildningsmarknaden, som Pi främst är inriktad på.

När du arbetar med en begränsad budget måste du också fatta beslut över vad ska man inkludera. Jag är för det första mycket nöjdare med att ha wifi och bt på 3 än jag skulle vara med extra minne. Din upplevelse varierar, men hittills har jag aldrig behövt mer minne, men allt jag har använt pi för behöver WiFi, så jag sparar $ 5 på en wifi-dongel.

Om du behöver absolut mer minne än så, det finns andra (dyrare) alternativ runt!

Aung Khant Ko
2016-04-30 12:21:33 UTC
view on stackexchange narkive permalink

Du kan inte lägga till RAM i en hallon-pi men hallon-pi-kluster är en annan sak

Kontrollera: http://www.zdnet.com/article/build-your-own- superdator-out-of-hallon-pi-boards /

UPPDATERING:

Eftersom någon begärde kommer jag att sammanfatta länken ovan. Även om jag själv inte känner till detaljerna verkar det som om det är möjligt att "ansluta" hallon Pi (s).

"Kiepert körde High Performance Linpack (HPL), standard superdatorns riktmärke på hans hemgjord dator och upptäckte att hans RPiCluster med sina 32 Broadcom BCM2708 ARM11-processorer som körs är 1 GHz och 14,6 GB användbart RAM-minne förvandlat till en HPL-topprestanda på 10,13 GFLOPS "

Välkommen till Raspberry Pi! Även om detta teoretiskt kan svara på frågan (faktiskt är svaret dock bara tangentiellt för frågan), [det skulle vara att föredra] (// meta.stackoverflow.com/q/8259) att inkludera de väsentliga delarna av svaret här och ange länken som referens.
Alex44
2016-08-26 03:51:45 UTC
view on stackexchange narkive permalink

Om du bara behöver mer minne för att fungera och du kör en Linux-distribution är det möjligt att förstora bytet. Följ instruktionerna här http://www.thegeekstuff.com/2010/08/how-to-add-swap-space/. På mitt Rasp hittade jag en swapfil henne / var / swap men det här är bara 100 MB. Så jag ersatte den med en större. Nu har mitt Rasp 1 GB RAM och 4 GB swap.

Hastigheten minskar om swap verkligen behövs. Vid normal drift påverkar detta inte prestandan. Ta en titt här sv.wikipedia.org/wiki/Swappiness för mer information. Denna lösning ska användas om du behöver minne under kort tid eller minnestoppar. Att byta till SSD minskar SSD-enhetens livslängd. Påminn om att byte inte är avsedd att förstora minnet för normal användning.

Om du permanent letar efter mer RAM och hastighet bör du ta en titt här http://www.digitaltrends.com / computing / c2-erbjudanden-konkurrenskraftiga-specifikationer-till-hallon-pi /.


När det gäller diskussionen nedan här några exempel användningsfall, där jag föredrar att byta snarare än att byta maskinvara:

  1. Bygg programvara på målet. Här finns två möjligheter:

    1. Använda en enda kärna för att minska mängden minne som behövs. I mitt exempel leder detta till en maximal minnesanvändning på 370 MB med en förfluten tid på 9h 45min.

    2. Med parallellbyggnad. I mitt exempel leder detta till en maximal minnesanvändning på 1400 MB med en förfluten tid på 4h 30min. Men på nästan 98% av den här tiden är det använda minnet under 1024 MB.

  2. Ett program med en tung initialiseringsprocess: Då är det känt att applikationens huvuddel behöver mindre än befintligt RAM men initialiseringsrutinen - som bara inträffar en gång under programmets livstid - har några större minnestoppar, byte är ett lämpligt sätt att hantera minnesbehovet.

För att undersöka hårdvarukraven kan du använda:

  / usr / bin / time -v <program invocation>  

detta ger dig denna information

  Kommando som är tidsinställd: "programanrop" Användartid (sekunder): 33164.02 Systemtid (sekunder): 1560.20 Procent av CPU detta jobb fick: 98% Förfluten tid (väggklocka) (h: mm: ss eller m: ss): 9: 45: 12 Genomsnittlig delad textstorlek ( kbyte): 0 Genomsnittlig delad datastorlek (kbyte): 0 Genomsnittlig stackstorlek (kbyte): 0 Genomsnittlig totalstorlek (kbyte): 0 Maximal inbyggd inställningsstorlek (kbyte): 379092 Genomsnittlig invånarstorlek (kbyte): 0 Större (kräver I / O) sidfel : 354Minor (återhämtning av en ram) sidfel: 47740772Frivilliga kontextomkopplare: 1049855Frivilliga kontextomkopplare: 482091Swaps: 0Filsystemingångar: 170240Filsystemutgångar: 3477064Socketmeddelanden skickade: 0Socket-meddelanden mottagna: 0Signaler levererade: 0Sida storlek (byte): 4096 / kod> 
RPi är redan långsam. Att låta det byta kommer att göra det ännu långsammare.
Så långt så rätt. Men i vissa fall är minne viktigare än hastighet. För mig till exempel: Jag måste bygga en stor mängd källor och bygga rippar eftersom det inte finns tillräckligt med minne. Så jag förstorar bytet. Och hastigheten minskar bara om bytet verkligen behövs. Vid normal drift påverkar detta inte prestandan. Ta en titt här https://en.wikipedia.org/wiki/Swappiness för mer information.
Behöver du verkligen bygga på själva RPi? Vill du inte korskompilera på ett snabbare system?
Det är en fråga om hur applikationen utförs i slutet. Vid en applikation i realtid gör det annorlunda att använda en "crossbuild-essential-armel" eller hyllans kompilator på målenheten. Men med avseende på byggprestanda kan det vara vettigt att korsa bygga naturligtvis.
Detta är ett bra svar - du gjorde ärendet till mig och jag är inte ett fan av swap. Även om det inte är ett exakt svar på frågan har det förmodligen mer pragmatiskt värde för fler än några av de andra ...


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...