Fora

Er 8 GB RAM nok til programmering?

iMakedonsk

Original plakat
10. oktober 2015
Brno, CZ
  • 15. december 2018
Hej med dig.

Jeg overvejer seriøst at anskaffe mig en MacBook Pro 13' 2018. Den primære brug af den bærbare computer ville være til kodning (front-end webudvikling), men jeg vil gerne dykke ned i iOS app-udvikling senere. Når det er sagt, er 8 GB RAM nok til at køre XCODE, eller skal jeg investere noget mere for at få 16 GB-versionen?

revmacian

20. oktober 2018


BRUG
  • 15. december 2018
iMacedonian sagde: Hej der.

Jeg overvejer seriøst at anskaffe mig en MacBook Pro 13' 2018. Den primære brug af den bærbare computer ville være til kodning (front-end webudvikling), men jeg vil gerne dykke ned i iOS app-udvikling senere. Når det er sagt, er 8 GB RAM nok til at køre XCODE, eller skal jeg investere noget mere for at få 16 GB-versionen?
Jeg kører Xcode på min 2014 Mac mini - den har 4 GB RAM, og jeg kan ikke se nogen problemer. Der vil være nogle mennesker, der vil fortælle dig, at 16 GB eller mere RAM er et must, men jeg har set, at dette simpelthen ikke er sandt.
Reaktioner:jeremiah256, racerhomie, BigMcGuire og 1 anden person

Emanuel rodriguez

17. oktober 2018
  • 15. december 2018
revmacian sagde: Jeg kører Xcode på min 2014 Mac mini - den har 4 GB RAM, og jeg kan ikke se nogen problemer. Der vil være nogle mennesker, der vil fortælle dig, at 16 GB eller mere RAM er et must, men jeg har set, at dette simpelthen ikke er sandt.
Var enige. Jeg har fundet ud af, at selv en Raspberry Pi med sin enkelt koncert RAM er i stand til at kompilere det meste. Hvis et projekt har et væld af C++-kode (ser på dig LLVM), eller andre komplekse sprog (der kræver, at compileren arbejder hårdt og dermed bruger mere RAM), så kan det generelt ikke administrere det. Synes omkring 3 GB er et sikkert minimum for udviklingsarbejde, efter min erfaring.

EDIT: Husk dog på, at dette var 3 GB inde i en VM, uden en GUI. 8GB-indstillingen er helt sikkert sikker for nu. Jeg vil dog anbefale 16 GB kun til fremtidssikring. 8 GB begynder at blive mindre behageligt end tidligere. Sidst redigeret: 15. december 2018
Reaktioner:BigMcGuire, jaduff46 og iMacedonian TIL

ammulder

18. december 2015
  • 16. december 2018
Hvor længe planlægger du at beholde maskinen? Da hukommelsen ikke kan opgraderes, køber du virkelig for, hvor meget hukommelse du skal bruge om 3-5 år, ikke i dag. (I betragtning af, at hver udgivelse af udviklingsværktøjer bruger mere hukommelse end den sidste). Især hvis du ender med at bruge containere eller VM'er (f.eks. for at køre en lokal version af en eller anden back-end, som din app opretter forbindelse til), vil produktivitetshittet for for lidt hukommelse senere er ikke besparelserne værd nu.
Reaktioner:jeremiah256, racerhomie, iMacedonian og 1 anden person

hundesluger

19. oktober 2014
Apple Campus, Cupertino, CA
  • 16. december 2018
Husk programmering i 4K tilbage i 1976.
Reaktioner:PhilMacbook

960 design

17. april 2012
Destiny, FL
  • 17. december 2018
iMacedonian sagde: Hej der.

Jeg overvejer seriøst at anskaffe mig en MacBook Pro 13' 2018. Den primære brug af den bærbare computer ville være til kodning (front-end webudvikling), men jeg vil gerne dykke ned i iOS app-udvikling senere. Når det er sagt, er 8 GB RAM nok til at køre XCODE, eller skal jeg investere noget mere for at få 16 GB-versionen?
8GB er rigeligt, jeg bruger en 16GB MBPr og ser sjældent hukommelsestrykket springe over 8GB.

Som en side, tjek ind på Expo.io ( https://expo.io/ ). Det er, hvad alle de seje børn bruger i disse dage (så meget nemmere at implementere på flere platforme). Advarsel: vil fungere for de fleste apps, men nogle har specifikke hardwarekrav/behov, som expo ikke opfylder. Ikke desto mindre et fantastisk startsted.
Reaktioner:iMakedonsk J

jtara

23. april 2009
  • 17. december 2018
Definer, hvad du mener med 'nok'?

Mener du 'nok til at byggerier ikke fejler?'

Eller 'nok til at bygge færdigt inden for en acceptabel tidsramme'?

Og/eller 'nok til at brugergrænsefladen ikke halter, og jeg kan arbejde i en editor/surve på nettet/læse e-mail under en build uden træghed?

Det afhænger af dine forventninger og din værktøjskæde.

Frontend-udvikling har typisk en kort/simpel værktøjskæde. Alt hvad du virkelig behøver er en god editor, der er egnet til opgaven, en lille 'legetøj' webserver, måske nogle værktøjer til at minificere Javascript/CSS (og måske en Sass compiler) til produktions builds, og under udvikling ville du typisk ikke engang bruge at.

Backend-udvikling behøver ofte ikke mere end frontend-udvikling. Eller har måske brug for lidt mere. For eksempel bruger jeg PostgreSQL som database. Så jeg har en lokal instans til udvikling/test. Jeg kører pgAdmin4, som kører i en Docker-container. Du skal muligvis køre en VM, der replikerer dit backend-miljø. GB tilføjer op.

Native app-udvikling udføres ofte med minimale værktøjer. Til grundlæggende iOS-appudvikling behøver du intet mere end Xcode. OK, og iOS-simulatoren. Hvis du laver en form for hybrid udvikling på tværs af platforme, skal du sandsynligvis tilføje yderligere værktøjskædekomponenter - og nødvendigvis Android SDK'er og byggeværktøjer. Android-udvikling bruger en anden compiler. Tilføj en anden simulator. (Jeg bruger GenyMotion, da begge tilgange leveret af Google er langsomme som melasse.) Enhver anstændig Android-simulator kører i en VM.

Åh, skal du teste den hjemmeside på Windows? Tilføj en Windows VM.

Så mange værktøjer kører i dag i en container eller en VM. Det øger hukommelseskravet.

Få så meget hukommelse, som dit budget kan tåle. Jeg tror dog, at 64 GB er den praktiske bund i dag for de fleste udviklinger. Jeg har for nylig fået en iMac Pro med 64 GB til udvikling. Jeg bruger et stort værktøjssæt. Jeg har tjekket Activity Monitor, og jeg opdager, at jeg endnu ikke har brugt en swap-fil. Men når alle værktøjerne er indlæst, bruger jeg et sted mellem 32 GB og 64 GB, typisk 40-50 GB. Men jeg har faktisk ikke fået læst ALT op på én gang endnu.

Det du skal spørge dig selv er:

- Er det vigtigt for systemet at være lydhør, mens der bygges?
- Hvor lang en byggecyklus er du villig til at tolerere?

I frontend-udvikling har man typisk ikke en 'build cycle', det vil sige build/test/repeat. Hvor længe er du villig til at vente på at finde ud af, at du har lavet en simpel fejl, som vil tage et par sekunder at rette? 15 minutter? 5 minutter? 1 minut? 30 sekunder?

I app-udvikling ved hjælp af et kompileret sprog har du altid en byggecyklus, og den kan have betydning. Jeg forstår, at Swift-byggecyklussen er væsentligt længere end Objective-C-byggecyklussen. (Jeg bruger ikke Swift selv, fordi jeg laver hybridudvikling, og den underliggende platformskode er i Objective-C (Java til Android), C og C++ - ingen Swift).

Mængden af ​​tilgængelig RAM vil have en betydelig indflydelse på byggecyklustiden.
Reaktioner:tegranjeet, quietstormSD, Anony-mouse og 1 anden person M

mpe

3. september 2010
  • 17. december 2018
32GB iMac Pro-bruger her.

Ja. 8GB RAM er nok til det meste.
Reaktioner:iMakedonsk J

jtara

23. april 2009
  • 17. december 2018
mpe sagde: Ja. 8GB RAM er nok til det meste.

Bruger MacBook Pro systemhukommelse til skærmen?

8GB er bestemt ikke nok på - for eksempel - en Mac Mini, da en ret god del (afhængig af model) af det bruges til skærmen.

Vigtigste feedback givet her er, at på nyere MacBooks er hukommelsen loddet ned. Du træffer en beslutning for de næste mange år.
Reaktioner:iMakedonsk

Toutou

til
6. januar 2015
Prag, Tjekkiet
  • 17. december 2018
Hvis du har et budget (og det er der ingen skam i), vil 8 koncerter være nok. Mens nogle udviklingsværktøjer er ret RAM-tunge (*hoste* Android Studio *hoste*), er min 4 gig 2013 Pro stadig brugbar. Og min arbejdsudstedte ThinkPad, som jeg laver Rails-udvikling på (i RubyMine, i Linux), fungerer som en charme med 8 koncerter.
Reaktioner:iMakedonsk

iMakedonsk

Original plakat
10. oktober 2015
Brno, CZ
  • 17. december 2018
jtara sagde: Definer hvad du mener med 'nok'?

Mener du 'nok til at byggerier ikke fejler?'

Eller 'nok til at bygge færdigt inden for en acceptabel tidsramme'?

Og/eller 'nok til at brugergrænsefladen ikke halter, og jeg kan arbejde i en editor/surve på nettet/læse e-mail under en build uden træghed?

Det afhænger af dine forventninger og din værktøjskæde.

Frontend-udvikling har typisk en kort/simpel værktøjskæde. Alt hvad du virkelig behøver er en god editor, der er egnet til opgaven, en lille 'legetøj' webserver, måske nogle værktøjer til at minificere Javascript/CSS (og måske en Sass compiler) til produktions builds, og under udvikling ville du typisk ikke engang bruge at.

Backend-udvikling behøver ofte ikke mere end frontend-udvikling. Eller har måske brug for lidt mere. For eksempel bruger jeg PostgreSQL som database. Så jeg har en lokal instans til udvikling/test. Jeg kører pgAdmin4, som kører i en Docker-container. Du skal muligvis køre en VM, der replikerer dit backend-miljø. GB tilføjer op.

Native app-udvikling udføres ofte med minimale værktøjer. Til grundlæggende iOS-appudvikling behøver du intet mere end Xcode. OK, og iOS-simulatoren. Hvis du laver en form for hybrid udvikling på tværs af platforme, skal du sandsynligvis tilføje yderligere værktøjskædekomponenter - og nødvendigvis Android SDK'er og byggeværktøjer. Android-udvikling bruger en anden compiler. Tilføj en anden simulator. (Jeg bruger GenyMotion, da begge tilgange leveret af Google er langsomme som melasse.) Enhver anstændig Android-simulator kører i en VM.

Åh, skal du teste den hjemmeside på Windows? Tilføj en Windows VM.

Så mange værktøjer kører i dag i en container eller en VM. Det øger hukommelseskravet.

Få så meget hukommelse, som dit budget kan tåle. Jeg tror dog, at 64 GB er den praktiske bundet i dag for de fleste udviklinger. Jeg har for nylig fået en iMac Pro med 64 GB til udvikling. Jeg bruger et stort værktøjssæt. Jeg har tjekket Activity Monitor, og jeg opdager, at jeg endnu ikke har brugt en swap-fil. Men når alle værktøjerne er indlæst, bruger jeg et sted mellem 32 GB og 64 GB, typisk 40-50 GB. Men jeg har faktisk ikke fået læst ALT op på én gang endnu.

Det du skal spørge dig selv er:

- Er det vigtigt for systemet at være lydhør, mens der bygges?
- Hvor lang en byggecyklus er du villig til at tolerere?

I frontend-udvikling har man typisk ikke en 'build cycle', det vil sige build/test/repeat. Hvor længe er du villig til at vente på at finde ud af, at du har lavet en simpel fejl, som vil tage et par sekunder at rette? 15 minutter? 5 minutter? 1 minut? 30 sekunder?

I app-udvikling ved hjælp af et kompileret sprog har du altid en byggecyklus, og den kan have betydning. Jeg forstår, at Swift-byggecyklussen er væsentligt længere end Objective-C-byggecyklussen. (Jeg bruger ikke Swift selv, fordi jeg laver hybridudvikling, og den underliggende platformskode er i Objective-C (Java til Android), C og C++ - ingen Swift).

Mængden af ​​tilgængelig RAM vil have en betydelig indflydelse på byggecyklustiden.
Tak for det omfattende svar, det gav mig et bedre perspektiv på de nødvendige ressourcer til disse forskellige kodningsscenarier, du har nævnt.
[doublepost=1545084766][/doublepost]
ammulder sagde: Hvor længe planlægger du at beholde maskinen? Da hukommelsen ikke kan opgraderes, køber du virkelig for, hvor meget hukommelse du skal bruge om 3-5 år, ikke i dag. (I betragtning af, at hver udgivelse af udviklingsværktøjer bruger mere hukommelse end den sidste). Især hvis du ender med at bruge containere eller VM'er (f.eks. for at køre en lokal version af en eller anden back-end, som din app opretter forbindelse til), vil produktivitetshittet for for lidt hukommelse senere er ikke besparelserne værd nu.
Mine bærbare computere holder normalt 4-6 år eller endda mere, så baseret på hvad jeg har læst indtil nu, ville det måske være bedst at få 16 GB-versionen, hvis jeg vil maksimere brugen. TIL

Anonym-mus

25. august 2016
  • 17. december 2018
jtara sagde: Definer hvad du mener med 'nok'?

(klip)

Så mange værktøjer kører i dag i en container eller en VM. Det øger hukommelseskravet.

Få så meget hukommelse, som dit budget kan tåle. Jeg tror dog, at 64 GB er den praktiske bundet i dag for de fleste udviklinger. Jeg har for nylig fået en iMac Pro med 64 GB til udvikling. Jeg bruger et stort værktøjssæt. Jeg har tjekket Activity Monitor, og jeg opdager, at jeg endnu ikke har brugt en swap-fil. Men når alle værktøjerne er indlæst, bruger jeg et sted mellem 32 GB og 64 GB, typisk 40-50 GB. Men jeg har faktisk ikke fået læst ALT op på én gang endnu.

Det du skal spørge dig selv er:

- Er det vigtigt for systemet at være lydhør, mens der bygges?
- Hvor lang en byggecyklus er du villig til at tolerere?

I frontend-udvikling har man typisk ikke en 'build cycle', det vil sige build/test/repeat. Hvor længe er du villig til at vente på at finde ud af, at du har lavet en simpel fejl, som vil tage et par sekunder at rette? 15 minutter? 5 minutter? 1 minut? 30 sekunder?

I app-udvikling ved hjælp af et kompileret sprog har du altid en byggecyklus, og den kan have betydning. Jeg forstår, at Swift-byggecyklussen er væsentligt længere end Objective-C-byggecyklussen. (Jeg bruger ikke Swift selv, fordi jeg laver hybridudvikling, og den underliggende platformskode er i Objective-C (Java til Android), C og C++ - ingen Swift).

Mængden af ​​tilgængelig RAM vil have en betydelig indflydelse på byggecyklustiden.

Dette opsummerer det ret meget. Hvis du har brug for at køre VM'er, så er 8 GB muligt (du kan køre en VM komfortabelt i 8 GB RAM). Hvis du har en SSD, vil hastighedsforskellen mellem at have 8 GB vs. mere RAM ikke være særlig tydelig, medmindre du kører et stort antal VM'er og/eller forsøger at kompilere en enorm kodebase. C

Konstruere

23. juni 2010
  • 17. december 2018
Forskellen mellem en 8GB-maskine og en 16GB-maskine er, at du til tider skal tage bevidste beslutninger om, hvilke hukommelseskrævende apps du skal have i forgrunden.

Hukommelseskrævende apps som XCode og Android Studio vil klare sig fint på 8 GB. Problemet ville opstå, hvis du prøvede at køre Slack forbundet til flere grupper, mens du efterlod Chrome åben med adskillige faner, eller måske et VM-system til at køre nogle Docker-containere. Det er samtidigheden, der forårsager problemerne.

Hvis du har råd til springet til 16 GB, og du planlægger at beholde denne maskine i et stykke tid, synes jeg, det er det hele værd for fremtidssikringen. Hvis de ekstra omkostninger er nok til at få dig til at tænke dig om to gange, så glem det og lav bare 8GB. Du vil være glad uanset hvad.
Reaktioner:Anonym-mus

revmacian

20. oktober 2018
BRUG
  • 17. december 2018
jtara sagde: 8GB er bestemt ikke nok på - for eksempel - en Mac Mini, da en ret god del (afhængig af model) af det bruges til skærmen.

Som jeg sagde tidligere, kører jeg Xcode på min 2014 Mac mini - den har 4 GB RAM, og jeg kan ikke se nogen problemer. Hvis jeg kan kode komfortabelt med 4GB, så er 8GB rigeligt. J

jtara

23. april 2009
  • 30. december 2018
kadammanali987 sagde: (Folk beholder ofte applikationer til kompilering og spiller spil indtil det tidspunkt. Dette forsinker behandlingen)

Eller du kan bare fremskynde kompilerings-link-kør-cyklussen til det punkt, hvor det ikke tager mere end en sund komme-røv-ud-af-stolen i et par minutter.

En del af det er at have nok hukommelse til at compileren kan arbejde effektivt med minimal/ingen ombytning.

At du KAN betyder ikke, at du BØR. Du skal beslutte, hvor værdifuld din tid er.

Det afgørende øjeblik for denne ligning for mig var for mange, mange år siden. Et produkt kaldet Instant-C. Det reducerede den cyklus fra flere minutter til flere sekunder. Det inspirerede mig til at reducere en kompilerings-link-run-cyklus for en applikation, der simulerer og analyserer variationer (fra en model, oprindeligt skrevet i Fortran) i mekaniske samlinger fra 1/2 time til mindre end et minut. (OK, jeg snød - jeg fjernede kompileringslink-run-cyklussen... ved at skrive en domænespecifik kompiler og ledsagende bytekodefortolker) 35 år senere er det stadig den dominerende løsning for det domæne.

I hvert fald tog OP sin beslutning - jeg synes, det er klogt.

BTW, hvis jeg stadig brugte min 2012 i7 Mini til builds, ville jeg bruge en Ramdisk. Det halverer cirka byggetiden for mig på Mini. Jeg prøvede det på min nye iMac Pro, men havde ikke samme effekt. Jeg er bange for, at jeg ikke tænkte på at prøve ramdisken, før jeg fik iMac Pro. MacOS har ikke rigtig gode RamDisk-løsninger. Mini har 16 GB. Der er ingen margen til en ramdisk på en maskine med 4GB. (iMac Pro har 64 GB).

vbctv

til
25. september 2013
Cleveland, OH
  • 2. maj 2019
jtara sagde: Bruger MacBook Pro systemhukommelse til skærmen?

8GB er bestemt ikke nok på - for eksempel - en Mac Mini, da en ret god del (afhængig af model) af det bruges til skærmen.

Vigtigste feedback givet her er, at på nyere MacBooks er hukommelsen loddet ned. Du træffer en beslutning for de næste mange år.

Jeg har en 2018 mac Mini koblet til 2 skærme og har 8 GB RAM, jeg ser aldrig nogen problemer og laver både Android Studio og Xcode udviklingsarbejde plus kører MAMP Pro i baggrunden. Hukommelsestrykmonitoren går aldrig rigtig op og forbliver altid grøn og lav. Jeg har diskuteret en opgradering til 16 GB, men jeg ser ikke rigtig et behov, medmindre jeg finder en fantastisk deal på udsalg.... C

ChromeCloud

21. juni 2009
Italien
  • 2. maj 2019
Jeg fandt de fleste svar indtil videre vildledende.

Når jeg prøver at bruge min MacBook Air med 4 GB RAM til at udvikle iOS-apps (jeg taler om rigtige apps, ikke kun små demoprojekter), bliver oplevelsen ret frustrerende meget hurtigt. Bare åbning af Xcode og Safari med 3 eller 4 faner vil helt mætte din RAM (husk, at systemet i sig selv tager omkring 2 GB), og at bruge simulatoren til at fejlsøge dine apps er stort set umuligt (computeren sænker farten til det punkt, at den ikke reagerer).

Med 8 GB er du i orden. Men ikke længe. Lad os sige, at 8 GB er minimum for at køre den fulde iOS-udviklingssuite komfortabelt + et par apps på siden, hvis du vil have som en fancy teksteditor eller nogle værktøjer til at lave vektorgrafik for eksempel.

Så hvis jeg skulle købe en ny maskine nu og beholde den i de næste 3 år eller mere, ville jeg få mindst 16 GB RAM.

Endnu en advarsel: Jeg ville aldrig have forudset dette for et par år siden, da jeg købte min iMac (som har 32 GB RAM, og det er min primære arbejdsstation), men det ser ud til, at hvis du vil køre simulatoren uden at hele GUI'en stammer, VRAM (alias videohukommelse) spiller også en vigtig rolle i ligningen.

For en retina iMac vil et 2GB videokort ikke være nok til at køre alt glat: Hvert par sekunder bliver bufferen fuld (det oplever jeg dog kun, mens jeg kører simulatoren), og iMac'en fryser i en brøkdel af et sekund, mens den bliver tømt og fyldt igen. Det er super irriterende.

Så min anbefaling til noget, du kan arbejde komfortabelt med de næste 3 år er: 16 GB RAM (eller mere) + 4 GB VRAM (eller mere) .
Reaktioner:Emanuel rodriguez M

mkelly

29. november 2007
  • 3. maj 2019
8 GB er nok for i dag, så længe du ikke kører virtuelle maskiner. 16 GB er nok det søde sted, hvis du ser på den bærbare, der holder 4-6 år. 32/64 GB er overkill, medmindre du kører mange VM'er på samme tid eller har penge at brænde. M

folkemængder

12. februar 2019
  • 4. maj 2019
Xcode er tung på CPU'en mindre på RAM. Jeg har lige købt en Mac mini 2018 i7 6 kerner, og når jeg kompilerer iOS og Swift i Xcode, går CPU'en i aktivitetsmonitoren til 90%!
I samme applikation kan jeg se, at RAM-forbruget er under 8 GB uden swap. Til senere tænker jeg på at opdatere RAM, men jeg har ikke travlt i øjeblikket. F

Filipeteixeira

10. april 2013
  • 6. maj 2019
Det burde være mere end nok. Ofte er det kun et problem, når du arbejder med sprog som R eller deromkring. Fordi disse sprog ofte har en tendens til at indlæse alt i hukommelsen, hvilket betyder, at med store datasæt, jo mere RAM du har, desto bedre vil den yde.