Używam programu, który buduje bardzo duży obiekt, i bardzo skorzystałbym z przydzielenia ponad 2 GB pamięci do tego procesu. Z góry dziękuję.Jak mogę przydzielić więcej niż 2 GB pamięci do procesu w systemie Windows?
Odpowiedz
Wygląda na to, że odnosisz się do limitu 2 GB w pamięci wirtualnej w 32-bitowym systemie Windows. Nie można obejść tego ograniczenia w systemie 32-bitowym.
Możesz użyć przełącznika/3gb w pliku boot.ini config i zaznaczyć proces "Duża przestrzeń adresowa" ... ale próba załadowania 2 GB pamięci w systemie 32-bitowym nie jest łatwa zadanie dla natywnego lub zarządzanego kodu. –
@alexei Administrator urządzenia może zrobić/3 GB, ale aplikacja nie może –
Nie można przydzielić pojedynczego obiektu (lub tablicy), który jest większy niż 2 GB, jest to ograniczenie CLR. Będziesz musiał podzielić obiekt na kawałki.
, więc przypuśćmy, że mam obiekt 3 GB, który podzielę na 6 obiektów o pojemności 0,5 GB, czy nie przekroczyłoby to limitu 2 GB? Dzięki jeszcze raz. – abw333
I, TBH, jeśli próbujesz zarządzać obiektem o takim rozmiarze, musisz trochę przemyśleć. –
@Schroedingers Cat Bardzo rozsądne jest, aby przydzielić duże obiekty dla niektórych algorytmów. –
. NET Framework 4.5 umożliwia tworzenie macierzy większych niż 2 GB na 64-bitowych platformach. Ta funkcja nie jest domyślnie włączona, musi być włączona poprzez plik konfiguracyjny za pomocą elementu gcAllowVeryLargeObjects.
http://msdn.microsoft.com/en-us/library/hh285054(v=vs.110).aspx
Czy to jedyny sposób? Naprawdę nie chcę przełączać się na VS2012, jeśli nie muszę. –
- 1. Przydzielanie więcej niż 4 GB pamięci w 64-bitowym systemie
- 2. pliki std :: fstream więcej niż 2 gb
- 3. R nie używa więcej niż 4 GB pamięci
- 4. 64-bitowy java nie przydzieli więcej niż 2 GB pamięci sterty
- 5. Czytanie pliku większego niż 2 GB w pamięci w Javie
- 6. Jak zwiększyć intelli 32bit xmx więcej niż 1 GB?
- 7. ImageMagick za pomocą więcej niż 2 GB pamięci do konwersji plików PDF
- 8. Jak zastąpić limit pamięci 2 GB, gdy R uruchamia się
- 9. Przydziel więcej niż 2 GB na stercie za pomocą C++ na 32-bitowym jądrze linuxowym
- 10. PhoneGap zużywający więcej pamięci w systemie iOS8 niż iOS7
- 11. Playframework - IOException nie może przydzielić pamięci
- 12. Jak zwiększyć limit pamięci dla PHP powyżej 2 GB?
- 13. mmap: Nie można przydzielić pamięci
- 14. Java używając więcej pamięci niż przydzielonej pamięci
- 15. Mapa pamięci pokazuje więcej pamięci RAM niż fizycznie dostępna
- 16. Więcej niż 2 przyciski na sweetalert 2
- 17. Nie można utworzyć woluminu większego niż 2 GB w openstacku
- 18. Jak odserializować 1 GB obiektów w Pythonie szybciej niż cPickle?
- 19. list() zużywa więcej pamięci niż rozumienie list
- 20. Lua - io.open() tylko do 2 GB?
- 21. Przesyłanie plików większych niż 2 GB w ASP.NET MVC 3
- 22. Jednorożec nie może przydzielić pamięci
- 23. Heroku Rails nie może rozwidlić nowego procesu dla połączenia: Nie mogę przydzielić pamięci
- 24. Jak mogę skompresować więcej niż dwa iteratory?
- 25. jak mogę ograniczyć wielkość pamięci dla procesu .net/mono
- 26. Errno :: ENOMEM: Nie można przydzielić pamięci - cat
- 27. Docker: w systemie plików pamięci
- 28. Jak przydzielić tablicę IntPtr [] w pamięci niezarządzanej?
- 29. Ruby: Nie można przydzielić pamięci
- 30. performSelector z więcej niż 2 obiektami
Chociaż może to uczynić program łatwiej napisać, przeznaczając 2GB + fragmentów pamięci z pewnością doprowadzi do gorszej aplikacji dla użytkownika. – JaredPar
Jak zbudować obiekt o pojemności 2 GB? – Gabe
@gabe tablica jest najbardziej oczywistym przykładem. –