Wizualizacja alokacji pamięci przy deklaracji obiektów

0

Cześć,

jestem zainteresowany narzędziem, które prezentowałoby graficznie, w jaki sposób program alokuje pamięć dla deklarowanych obiektów.

Czy istnieje coś takiego już? Chciałbym, żeby można było przejrzyście pokazać zjawisko wyrównywania struktury danych, dla lepszej optymalizacji zajmowanej pamięci i wydajniejszego programowania w krytycznych sekcjach kodu.

0

Zjawisko wyrównywania struktury danych ma miejsce na etapie kompilacji, nie runtime'u - wystarczy zatem, że przejrzysz wygenerowany listing assembly, a będziesz wiedział.

Tym niemniej, GCC ma sporo przełączników wyrzucających masę ciekawych informacji o kodzie w trakcie kompilacji - mógłbyś rzucić na spis i zobaczyć, czy nie będzie tam czegoś interesującego (https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html).

0
Smutny Ogórek napisał(a):

dla lepszej optymalizacji zajmowanej pamięci

Pamięć to się przez to marnuje a nie „lepiej optymalizuje zajętość”. W przypadku pojedynczego obiektu to nie ma znaczenia, ale jeśli mamy ogromną kolekcję warto się zastanowić, czy połowy pamięci nie marnujemy na padding…

i wydajniejszego programowania w krytycznych sekcjach kodu.

Czasami prawidłowe wyrównanie jest wręcz konieczne. Sporo tu zależy od architektury procesora.

1 użytkowników online, w tym zalogowanych: 0, gości: 1