Predictive Bitmaps w Linuxie

Tegoroczny cykl prezentacji na V Sesji Linuksowej we Wrocławiu dotyczył przede wszystkim zaawansowanych technologii open source.

Tegoroczny cykl prezentacji na V Sesji Linuksowej we Wrocławiu dotyczył przede wszystkim zaawansowanych technologii open source.

Ciekawą, eksperymentalną technologię optymalizacji wydajności aplikacji przez przewidywanie wykorzystania obszarów pamięci (Predictive Bitmaps) przedstawił Andi Kleen. Najpoważniejszym źródłem opóźnień w wykonaniu dużych programów jest oczekiwanie na transfer danych z systemów dyskowych. Aplikacja nie ma informacji o swoim rozłożeniu na dysku, ani nawet o ścieżce wykonywanych instrukcji w pliku. Jednak jądro systemu, na podstawie dodatkowych informacji, może dokonać optymalizacji odczytu danych tak, aby uruchamianie i praca programu przebiegały szybciej. Taka właśnie jest idea technologii Predictive Bitmaps.

Zakłada ona wykorzystanie dodatkowych informacji, tzw. bitmap. Informacje te dotyczą m.in. dokładnego miejsca przechowywania poszczególnych stron pliku oraz zalecanej, najbardziej efektywnej kolejności ich odczytu. Obecnie największym problemem jest jednak skuteczne przewidywanie potrzebnych stron pliku oraz znalezienie efektywnego sposobu zapisu bitmapy. Jedna z realizacji zakłada jej składanie na końcu pliku wykonywalnego. Powoduje to jednak częste zmiany w pliku, co w efekcie utrudnia m.in. sprawdzanie jego autentyczności. Powoduje też zwiększenie objętości różnicowych kopii bezpieczeństwa.

System Predictive Bitmaps jest w trakcie rozwoju. Obecnie znajduje się w stadium wczesnych eksperymentów. Pierwsze porównania pokazały jednak, że taka optymalizacja pobierania stron kodu powoduje znaczne przyspieszenie pracy, choć trudno jest dokładnie je określić w sposób niezależny i powtarzalny. Warto jednak zauważyć, że rozwój dysków SSD, w których nie występuje opóźnienie odczytu spowodowane przestawieniem głowicy i wyszukiwaniem ścieżki, może sprawić, że tego typu technologie optymalizacji nie będą miały zastosowania.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200