Seminarium: Systemy Rozproszone
28 kwietnia 2022 12:15, sala 4070, transmisja online
Cache w mikrokontrolerze TI CC2650 jest komponentem przechowującym kopię ostatnio używanych danych z pamięci Flash w mniejszej i szybszej pamięci typu SRAM. Do emulacji tego komponentu konieczna jest dokładna znajomość działania polityki cache replacement, wszelkich optymalizacji i innych właściwości wynikających ze szczegółów implementacyjnych układu scalonego. Tego typu informacji próżno szukać w dokumentacji. Ponadto w praktyce jedyna obserwowalna bezpośrednio informacja o stanie cache to czas trwania odczytu z danego adresu.
W ramach prezentacji opowiem, jak przy pomocy ograniczonych informacji z dokumentacji oraz pomiarów długości odczytów można odtworzyć działanie cache. Pokażę również osobliwy model, do jakiego doprowadziły badania.
Zapraszam,
Wojciech Ciszewski
Bibliografia:
Usługi sieciowe polegają na systemach cache'owania na wielu warstwach. Zwykle dla każdego przypadku użycia są one implementowane oddzielnie - cache CDN mają mieć niską latencję, cache baz danych typu klucz-wartość - wysoką przepustowość, a te przechowujące multimedia - dużą pojemność.
W trakcie mojej prezentacji opowiem o systemach cache'owania przeznaczonych dla przechowywania malutkich (~100 bajtów) obiektów. Opowiem o wymaganiach technicznych stawianych przed takim oprogramowaniem i standardowych sposobach implementacji. Szczególną uwagę poświęcę systemowi Kangaroo, którego twórcom udało się stworzyć rozwiązanie wysoce konfigurowalne, niewymagające dużej ilości pamięci operacyjnej i dbające o żywotność używanej pamięci flash, a równocześnie zmniejszającej względem najlepszych istniejących rozwiązań odsetek zapytań, dla których dane nie znajdują się w cache.
Zapraszam,
Adam Czajkowski
Bibliografia: