Seminarium: Systemy Rozproszone
28 kwietnia 2022 12:15, sala 4070, transmisja online
Wojciech Ciszewski, Adam Czajkowski



Inżynieria wsteczna cache w mikrokontrolerze TI CC2650



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:





Kangaroo: Caching Billions of Tiny Objects on Flash



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: