Mam zestaw obrazów zapisanych w tablicy 3D typu Int16
, liczba obrazów i pamięci podręcznej może osiągnąć do 600 lub więcej obrazów, które wpływają na wydajność pamięci, jaką jest wydajność usuwania pamięci. Słyszałem o układaniu pamięci, które może usprawnić zarządzanie pamięcią, ponieważ ustawia elementy tablicy podrzędnej w oddzielnej porcji.
- Czy mogę używać układania pamięci w moim przypadku?
- jeśli tak, jak mogę go użyć?Zarządzanie płytkami pamięci i dużymi obiektami C#
Odpowiedz
Czy mogę używać układania pamięci w moim przypadku?
Tak. Tablica 3d int16 [,,] musi być JEDNYM blokiem pamięci. Połóż to na plasterki i już są mniejsze. ([] [,]).
Reszta zależy od Twoich konkretnych potrzeb.
tak krótko [x] [y, z] jest lepiej niż [x, y, z]. a najlepszy jest krótki [x] [y] [z] czy to, co rozumiem, jest słuszne? –
@Sara, to dalekie od tego proste. To, która forma jest lepsza, zależy od tego, co dokładnie robisz. – svick
Tak. Jest to brytownica do korzystania z pamięci, ponieważ nie jest to JEDEN DUŻY BLOK (każda tablica jest jedna), ale optymalny rozmiar zależy od Twoich konkretnych potrzeb. To skomplikowane. Używam na przykład buforów o wielkości do 4mb, które są poddawane recyklingowi (jest nieużywana kolejka). – TomTom
Odbiór śmieci przyniesie korzyści w postaci jak najmniejszej ilości przedmiotów do zebrania. Tablica wielowymiarowa będzie traktowana jako pojedyncza alokacja:
short[,,] a = new short[2,3,4];
Szorstka tablica będzie korzystać z wielu różnych przydziałów. Jego mniejsze rozmiary alokacji może być znacznie szybciej przeznaczyć, ale może umieścić więcej szczep na GC podczas kolekcji:
short[][][] a = new short[2][][];
Nigdy nie słyszałem o „kafli pamięci” przed więc jeśli można wyjaśnić, co to znaczy, Mogę lepiej odpowiedzieć na twoje pytanie.
Wiele aplikacji komputerowych wymaga manipulowania dużymi tablicami danych. Aplikacje te mogą zachowywać się źle w systemie stronicowanej pamięci wirtualnej (VM), ze względu na słabe wzorce dostępu do pamięci.Jednym z rozwiązań tego problemu jest układanie płytek, technika, w której macierze są podzielone na pod-macierze, które mapują jeden do jednego ze stronami VM. ==> skopiowane z tego pliku pdf: http: //www.usenix.org/publications/library/proceedings/sa92/franklin.pdf –
- 1. Scala nie radzi sobie z dużymi obiektami?
- 2. Zarządzanie pamięcią C w gcc
- 3. Pule pamięci i bufory C++
- 4. Zarządzanie C# łańcuchów w strukturach
- 5. Przenoszenie MKOverlayPathView znika za płytkami
- 6. Praca z dużymi bitmapami powoduje wyjątek braku pamięci
- 7. Jak działa zarządzanie wykorzystaniem pamięci macierzy PHP?
- 8. Efektywne zarządzanie pamięcią w R
- 9. JSF Zarządzanie sesją i tunning
- 10. Zarządzanie pamięcią C z blokami, ARC i nie-ARC
- 11. Jak używać Struts 2 z Prędkością i Płytkami?
- 12. C++ i ochrona pamięci procesu
- 13. Resharper z dużymi lub * bardzo * dużymi plikami
- 14. Zarządzanie zależnościami C o DUB
- 15. Zarządzanie tabelami stron Linux i MMU
- 16. Elementy iframe i zarządzanie pamięcią w JavaScript
- 17. Przekazywanie danych między obiektami w C#
- 18. Mapa pamięci obiektów klasy C++
- 19. Zmienny kontener z niezmiennymi obiektami w C++
- 20. Efektywność korzystania z plików PNG i BMP z dużymi plikami
- 21. Śledź użycie pamięci w C++ i oceń zużycie pamięci
- 22. Jak wyłączyć dynamiczne zarządzanie obiektami, gdy widoczne elementy w zmianach listview qml?
- 23. Zarządzanie pamięcią trzy js
- 24. Android - zarządzanie bitmapami i pamięcią?
- 25. Reguła biznesowa i zarządzanie procesami?
- 26. Zarządzanie pamięcią dużych plików
- 27. Słownik C# i efektywne wykorzystanie pamięci
- 28. przydzielić pamięci i zapisać ciąg w C
- 29. Wskaźniki i alokacji pamięci w C
- 30. C++ Przydzielanie pamięci na stercie i stosie?
Jak zdefiniowana jest twoja tablica? 'new short [n] [] []' lub 'new short [x, y, z]'? Innymi słowy, czy jest to tak naprawdę wielowymiarowa tablica, czy też jest to poszarpana tablica? Skąd wiadomo, że ma to wpływ na wyniki GC? – svick
600-owskie obiekty są niczym. Weź profilera pamięci i zobacz, co się naprawdę dzieje. – sisve
@ Sierpień moja tablica jest w krótkim formularzu [x, y, z], ponieważ szukałem dużo z powodu przecieku pamięci mam i okazało się, że duże obiekty wpływają na wydajność GC i niektórzy ludzie muszą zadzwonić GC. Zbierz w takim przypadku, więc co jest lepsze krótki [x, y, z] lub krótki [x] [y] [z] ?, Dziękujemy za odpowiedź –