Optymalizacja programów Open- Source Inne zagadnienia Krzysztof Lichota

Slides:



Advertisements
Podobne prezentacje
Video DR-S Cyfrowy rejestrator wideo
Advertisements

Budowa wewnętrzna komputera
BUDOWA WEWNĘTRZNA KOMPUTERA
Zapis danych.
ELEMENTY SKŁADOWE JEDNOSTKI CENTRALNEJ
Systemy operacyjne Bibliografia:
Systemy operacyjne Bibliografia:
Wprowadzenie do prezentacji multimedialnych
Temat : Części komputera
WINDOWS 95 WYCINEK AUTOSTART TWORZENIE POWIĄZAŃ PLIKÓW Z APLIKACJAMI
WINDOWS 95.
Elementy informatyki w nauczaniu zintegrowanym
Budowa Komputera.
PODSTAWOWY ZESTAW KOMPUTEROWY
Panel sterowania.
OPRACOWANIE: Orsik Mirosław, Paweł Hajduk, Bożena
ZESTAW KOMPUTEROWY.
ZASOBY KOMPUTERA I PRACA W SYSTEMIE OPERACYJNYM WINDOWS XP
Komputer a system komputerowy
TBD - P ERFORMANCE W BAZACH M ICROSOFT SQL S ERVER, CZYLI O CO W TYM W OGÓLE CHODZI Michał Grodzicki MCTS SQL SERVER lipca 2012.
Budowa komputera.
Wielozadaniowowść systemu operacyjnego Linux
Poznajemy pulpit.
Elementy składowe komputera
Urządzenia wewnętrzne komputera
Autor: Justyna Radomska
POZNAJEMY NASZE MIEJSCE PRACY
Komputer – maszyna XXI wieku
Budowa komputera.
Przystawka Zarządzanie dyskami
Konfiguracja systemu Windows
Aplikacje systemu windows XP
Podsystem graficzny i audio
Budowa i działanie komputera - jednostka
Buforowanie D e f i n i c j a.
Główne komponenty komputera i nie tylko
Nośniki informacji i akcesoria komputerowe
Podstawowe informacje o SYSTEMIE WINDOWS
Budowa komputera.
Defragmentacja dysku Jednym z kluczowych czynników wydajności operacji wejścia/wyjścia jest poziom fragmentacji plików. Fragmentacja oznacza zapisywanie.
Konsola odzyskiwania.
Budowa komputera ProProgramer.
Elementy zestawu komputerowego
Etapy uruchamiania systemu Pliki konfiguracyjne
Instalacja Windows 7 z pendrive’a
SPRZET KOMPUTEROWY.
Budowa wewnętrzna KOMPUTERA
PULPIT WINDOWS.
Budowa zasilacza.
Obróbka obrazu w komputerze
prezentacja multimedialna
Wzorce slajdów, animacje, różne orientacje slajdów
Metody pracy samokształceniowej ucznia
1. Logowanie z usługą Active Directory. a) logowanie do domeny Windows 2003 Server odbywa się znacznie szybciej niż w poprzednich wersjach. b) nie ma odwołania.
Dokumentacja obsługi programów Kamil Smużyński Piotr Kościński.
Jednostka centralna.
BUDOWA WEWNĘTRZNA KOMPUTERA
Budowa komputera.
Przewodnik Tworzenie powiadomień dotyczących wyszukiwania w EBSCOhost
Interfejs użytkownika „No matter how cool your interface is, less of it would be better”
mysz drukarka Jednostka centralna monitor klawiatura.
BUDOWA KOMPUTERA I JEGO FUNKCJE
Optymalizacja programów Open-Source
Optymalizacja programów Open-Source
System operacyjny cz.2 i ostatnia
Lekcje z komputerem-wprowadzenie
PROGRAMY DO KONTROLI RODZICIELSKIEJ
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Budowa komputera jednostki centralnej. I. Przód jednostki centralnej Gniazdo słuchawkowe i mikrofonowe Czytnik kart pamięci Miejsce na CD-ROM Przycisk.
Co kryje komputer? Usuń tekst, który nie pasuje do zdjęć na slajdach. Poprawioną prezentację zapisz w swoim folderze osobistym pod nazwą: co_kryje_komputer.
Zapis prezentacji:

Optymalizacja programów Open- Source Inne zagadnienia Krzysztof Lichota

„Oszukiwanie” użytkownika

● Jeśli nie jesteśmy w stanie wykonać jakiejś czynności w programie szybko, możemy sprawić, że użytkownikowi będzie się wydawało, że czynność zostaje wykonana szybko albo że w ogóle coś się dzieje ● Można wykorzystać specyficzne cechy ludzkiego sposobu myślenia, by użytkownikowi nie wydawało się, że program nic nie robi, a on czeka ● Najprostsze spostrzeżenie – jak nam się nudzi, to czas płynie wolno

Informowanie użytkownika ● Użytkownik ma tendencję do myślenia, że jak coś się dzieje w interfejsie, to coś się dzieje w programie („kartka lata między folderami, to informacja jest przesyłana”) ● Jak użytkownik nic nie widzi na ekranie, to zaczyna się nudzić i wydaje mu się, że czas płynie wolno – dodatkowo nie wie, czy jego polecenie zostało wykonane, więc zaczyna się irytować

Informowanie użytkownika (2) ● Wnioski: – Użytkownikowi trzeba pokazać coś tak szybko, jak to możliwe, nawet jeśli nie jest w pełni użyteczne (vide uruchomienie Windows XP) – Jeśli uruchamianie programu trwa długo, to należy pokazać użytkownikowi „splash screen” – Jeśli operacja w programie trwa długo, to należy wyświetlić pasek postępu lub wykonywać operację w tle – We wszystkich wypadkach, jeżeli to możliwe, należy informować użytkownika o fazie wykonania operacji (powinna się zmieniać w miarę szybko), jeśli to niemożliwe, to trzeba sprawić wrażenie ruchu (animacja, miganie, itp.)

Częściowe wyniki ● Jeśli mamy możliwość zaprezentowania częściowo przetworzonych wyników (np. częściowo wyświetlonej strony WWW, pierwszych wyników zapytania SQL, itp. to należy to zrobić, nawet jeśli potem trzeba będzie coś poprawić (np. układ strony) ● Należy pamiętać, żeby dać użytkownikowi sygnał, kiedy operacja naprawdę się zakończy, żeby nie czekał na więcej!

Częściowe wyniki (2) ● W przypadku przetwarzania obrazków można zastosować „progresywne” wyświetlanie (najpierw wyświetlamy w niskiej rozdzielczości, potem doczytujemy szczegóły) ● Największe znaczenie ma to, gdy użytkownik na podstawie części wyniku decyduje czy dalej wykonywać operację (np. zastosowanie filtra obrazu) ● Można też zastosować techniki omawiane przy starcie programu – wyświetlić wyniki z cache poprzedniego wykonania, wczytywać z wyprzedzeniem, itp.

Zyskiwanie na czasie przez rozwijanie ● W przypadku gdy operacja zajmuje około sekundy, a nie chcemy by użytkownik miał wrażenie, że jest opóźnienie można zastosować sztuczkę z „rozwijaniem” listy bądź menu, co pozwala uzyskać kilka ułamków sekund na wypełnienie listy lub menu

Optymalizacja zużycia energii

● W przypadku urządzeń przenośnych ważnym wyznacznikiem działania programu jest zużycie energii ● Procesory, dyski i inne urządzenia są w stanie automatycznie przełączyć się na niższy pobór energii jeśli nie mają nic do roboty ● Programy można napisać w taki sposób, by współgrały z mechanizmami zarządzania energią, często wyższe zużycie energii jest wynikiem nieprzemyślanego projektowania i ułatwiania sobie implementacji, więc można to poprawić

Ogólne zasady optymalizacji zużycia energii ● Staramy się wykonywać operacje rzadko i przeplatać je maksymalnie długimi okresami bezczynności ● Jeśli coś robimy, to staramy się wykonać maksymalnie dużo w jednym rzucie, w szczególności dotyczy to korzystania z dysku, które wymaga rozkręcenia talerzy ● Zamieniamy przepytywanie (polling) na sterowanie oparte na zdarzeniach (np. ustawiamy timer, czekamy na powiadomienie z programu)

Ogólne zasady optymalizacji zużycia energii (2) ● Zużycie energii może być też pośrednie przez wywołanie innego programu, więc na to też trzeba zwrócić uwagę! ● Unikamy używania bez potrzeby zaawansowanych funkcji sprzętu (np. grafiki 3D, operacji zmiennoprzecinkowych) – procesory mają możliwość wyłączenia części rdzeni ● Absolutnie zabroniony jest spinning (wirowanie) ● Każde zmniejszenie zużycia procesora przez program umożliwia obniżenie częstotliwości CPU, co przekłada się na niższe zużycie energii i ograniczenie chłodzenia (np. wyłączenie wentylatora)

PowerTOP ● PowerTOP to narzędzie stworzone przez Intela do analizy zużycia energii przez procesor spowodowanego przez programy ● Pokazuje ile czasu procesor spędza w poszczególnych poziomach zasilania ● Pokazuje liczbę obudzeń na sekundę ● Pokazuje, które programy powodują obudzenie ● Przykłady znalezionych problemów: hphttp:// hp

Zmniejszanie głośności

● W niektórych programach (np. odtwarzaczach filmów, programach do prezentacji) kluczowe jest, by komputer zachowywał się cicho ● Dużym źródłem hałasu są wentylatory procesora i karty graficznej – można je wyciszyć stosując techniki ograniczania poboru energii ● Kolejnym źródłem hałasu jest dysk – trzeba wczytać wszystkie potrzebne dane od razu albo wczytywać dane powoli ale jednostajnie, ale unikając zatrzymania i ponownego rozkręcenia talerzy, co jest głośne

Zmniejszanie głośności ● W przypadku dysku należy unikać również przesunięć głowicy (wydaje charakterystyczne tyknięcia), najlepiej zgrupować dane w jednym miejscu na dysku i nie używać małych plików ● Jeśli wczytujemy dane z płyty CD lub DVD, należy ograniczyć maksymalną szybkość wczytywania w napędzie (im szybciej kręci się płyta tym głośniejszy dźwięk), należy dane wczytywać jednostajnie z niską szybkością, żeby unikać również rozkręcania i zatrzymywania płyty

Bibliografia ● responding-to-user.html responding-to-user.html ● ●