Aktywne Wpisy

LukaszTV +366
AHA xd jak widać Polaczki wszystko obejdą xdd
Już widzę jak ktoś kupuję butelkę wody 3,001l
#polakicebulaki #kaucja #systemkaucyjny #heheszki #ustronianka #napoje #kaufland #gospodarka #ekologia
Już widzę jak ktoś kupuję butelkę wody 3,001l
#polakicebulaki #kaucja #systemkaucyjny #heheszki #ustronianka #napoje #kaufland #gospodarka #ekologia
źródło: image
Pobierz
CrokusYounghand +110
źródło: temp_file8496815789850387429
Pobierz




porobiłem pare testów i wyszło że te dwuwymiarowe są ok. 4x lub wiecej szybsze niż 1 wymiarowe, przynamjniej kompilujac na Intelu visual studio x86, chce jeszcze sprawić na docelowej architekturze 68k.. może to wybika z tego że żeby móc traktoac 1 wymiarowa tablicę jako macierz trzeba jednac sobie obliczyć index = x + y * width - co jest dodatkową operacją.. w każdym razie w tym przypadku przyrost wydajności bardzo duży..
Liczenie indeksu nie powinno powodować tak drastycznego spadku wydajności. Natomiast duże skoki po tablicy mogą powodować cache missy.
@ZawzietyRobaczek: pokaz kod, cos mi sie nie chce wierzyc. Tablica jednowymiarowa powinna byc odrobine szybsza i zajmowac troche mniej pamieci.
Zasadniczo, takie "x + y*w" na współczesnym x86 jest zdecydowanie szybsze niż wczytanie adresu tablicy - nawet i z cache, nie mówiąc już o RAM.
W 1d masz ciągły blok bajtów, w 2d każdy wiersz może być w zupełnie innym miejscu. Jak czytasz sekwencyjnie, wiersz po wierszu, tablica 1d super działa z cache.
STL też ma pod spodem tablice. Pytanie możesz sobie przetłumaczyć na
std::array>vsstd::vector>Ostatnio pisalem libke, zeby miec tablice na 10x page, test przy 45 milionach doubles - defragmentacja na poziomie 32%. Nie p-----l glupot xD
Wiesz o tym, ze alokujac dwie tablice obok siebie (w kodzie), jedna moze wyladowac zupelnie gdzie indziej?
Ale autor wpisu sam nie wspomniał z jakich korzysta
taka tablica nie zajmuje ciągłego obszaru pamięci, każdy wiersz może zostać zaalokowany gdzie indziej.
std::vector>w taki sposób działa.int**działa 4x szybciej. Więc prawdziwe pytanie brzmi: jak to możliwe? ( ͡° ͜ʖ ͡°)