Algorytmy Apriori i Partition C++, Linux
|
|
- Mieczysław Sawicki
- 5 lat temu
- Przeglądów:
Transkrypt
1 Algorytmy Apriori i Partition C++, Linux Ewa Kowalczuk, Piotr Śniegowski, Artur Osesik 14 czerwca 11 1 Zastosowane metody poprawy efektywności Reprezentacja zbioru Dla stworzenia efektywnie działającego algorytmu bardzo wygodnym podejściem okazało się przygotowanie działającej implementacji wstępnej, a następnie poprawa jej efektywności, przy jednoczesnym zwracaniu uwagi na zachowanie poprawności. Ze względu na wygodę implementacji klasa Set (reprezentująca zbiór) została początkowo zaimplementowana jako dziedzicząca publicznie po std::list<item>. Poprawy efektywności dokonano poprzez reimplementację klasy Set jako wektora elementów. Dzięki konsekwentnemu stosowaniu zasady enkapsulacji, wymagało to jedynie zmian w klasie Set, to znaczy reimplementacji jej interfejsu składającego się m. in. z typu iterator zdefiniowanego jako Item * oraz metod takich jak iterator begin() (wcześniej odziedziczonych po std::list). Wsparcie dla częstych operacji Klasa reprezentująca zbiór, wykorzystywana zarówno do przechowywania transakcji jak i zbiorów częstych, posiadała pole będące 64-bitowym kluczem hashującym. Nie był on jednak wykorzystywany do adresacji, ale do przyspieszenia sprawdzania relacji równości i zawierania się zbiorów. W kluczu i-ty bit był zapalony, jeśli w zbiorze istniał element o reszcie z dzielenia przez 64 równej i. Dzięki takiej konstrukcji, operacje na kluczu były bardzo proste: A := A {e} A.klucz = (1 << (e % 64)) A.klucz!= B.klucz A B A.klucz & B.klucz A B Z powodu oczywistych kolizji, nierówność kluczy jedynie implikuje nierówność zbiorów nie jest jej równoważna. Jeśli warunek zdefiniowany na kluczach jest spełniony, należy dokonać równoczesnej iteracji po zbiorach i porównywać kolejne pary elementów. Inne potencjalne reprezentacje Skuteczność i elegancja mechanizmu bitowych hashy może zachęcać do próby jednoznacznego reprezentowania transakcji w postaci bitowej. Jednakże wadą czystej reprezentacji bitowej jest fakt, iż długość reprezentacji dla rzadkich transakcji byłaby niewspółmierna do informacji w nich zawartej. Wartymi sprawdzenia mogłyby okazać się rozwiązania, w których zbiór przechowywany jest w zwykły sposób jako wektor elementów, ale jeśli jest wystarczająco gęsty (i posiada elementów o zbyt dużych numerach), utrzymywana jest także jego reprezentacja bitowa. Wówczas, jeśli obydwa porównywane zbiory posiadają reprezentację bitową 1
2 (są odpowiednio gęste), prawdziwość relacji sprawdzana jest za pomocą tych reprezentacji a odpowiedź jest jednoznaczna (w przeciwieństwie do rozwiązania z kluczami). Rozwiązanie takie jest elastyczne w tym sensie, że dla zbioru zawierającego transakcje głównie gęste, będzie często korzystała ze zoptymalizowanych operacji, natomiast wciąż będzie nadawała się do użycia dla zbiorów danych o rzadkich transakcjach. Rozwiązanie takie nie stanowi optymalizacji pamięciowej wprowadza drugą reprezentację, lecz może być poważną optymalizacją czasową. Drugim potencjalnym rozwiązaniem jest reprezentacja mieszana: przechowywana jest lista bloków o interpretacji bitowej, jednakże tylko tych, w których znajduje się co najmniej jeden element. Wówczas konieczne jest przechowywanie dodatkowej liczby reprezentującej number bloku, co stanowi dodatkowy koszt pamięciowy. Warto zauważyć, iż taka reprezentacja byłaby odporna na problem zmiennej mocy zbioru elementów tworzących transakcje. 2
3 2 Wyniki Warunki badania Przebadano działanie trzech algorytmów: Apriori, Partition oraz zrównoleglonego Partition dla trzech zbiorów danych: accidents, kosarak oraz mushroom, dla różnych poziomów wsparcia. Wszystkie badania przeprowadzono dla poziomu ufności.75. Badania przeprowadzono na komputerze wyposażonym w: ˆ procesor Intel Core i3 M33, 2.13GHz, z technologią Hyper-Threading (2 rdzenie fizyczne, 4 logiczne), ˆ 4GB pamięci RAM z zainstalowaną dystrybucją Debian systemu Linux oraz kompilatorem gcc w wersji Program skompilowano z włączonymi optymalizacjami. Czas działania Wykresy 1, 2 oraz 3 przedstawiają czas działania algorytmów Apriori oraz Partition kolejno dla zbiorów accidents, kosarak oraz mushroom, przy czym dla algorytmu Partition stanowią średnią dla liczby podziałów na partycje wynoszących: 2, 3 oraz 4. W przypadku zbioru mushroom algorytm Partition jest o około 2 rzędy wielkości gorszy od algorytmu Apriori. Dla zbiorów accidents oraz kosarak można jednak zaobserwować wyraźną konkurencję między dwoma rozwiązaniami. W przypadku zbioru accidents początkowo szybszy jest Apriori. Jest to prawdopodobnie skutkiem stosunkowo niskiego poziomu ufności, który owocuje większą liczbą znajdowanych zbiorów częstych dla algorytmu Partition oznacza to jednak także większą liczbę kandydujących zbiorów częstych, które okażą się fałszywymi w drugiej fazie działania. Wraz ze zwiększaniem progu wsparcia różnica pomiędzy algorytmami zmniejsza się, aż dla wartości ok..77 algorytm Partition zdobywa prowadzenie. Jego zaleta polegająca na jedynie dwukrotnym odczycie bazy danych, zaczyna od tego momentu przeważać nad kosztem weryfikacji fałszywych zbiorów częstych. Przy zastosowaniu wystarczająco dużego progu wsparcia znalezienie jakiejkolwiek reguły okazuje się niemożliwe. Jeśli algorytm Apriori nie znajdzie żadnego jednoelementowego zbioru częstego (lub znajdzie taki tylko jeden), wówczas nie wygeneruje on żadnych dwuelementowych zbiorów kandydujących, a zatem nie dokona drugiego odczytu bazy danych. Algorytm Partition wciąż jednak będzie w stanie znaleźć zbiory lokalnie częste, które będzie musiał zweryfikować w drugiej fazie, dokonując drugiego odczytu. Jest to zauważalne w okolicach progu wsparcia równego.16 w zbiorze kosarak; zapewne nastąpi to także dla zbioru accidents dla poziomu wsparcia większego niż.95. Rozpatrywanie tak dużych poziomów wsparcia nosi jednak znamiona dyskusji akademickiej. Liczba reguł, zajętość pamięci, liczba podziałów Wykres 4 przedstawia liczbę znajdowanych reguł w funkcji progu wsparcia (przy progu ufności równym.75) dla badanych zbiorów. Wyraźnie widać zupełnie różny charakter tych zbiorów. Wykres 7 przedstawia średnią zajętość pamięci algorytmów Apriori oraz sekwencyjnego Partition, przy czym dla tego drugiego wielkość partycji wynosiła 1/4 całego zbioru transakcji. Wykresy 5 oraz 6 przedstawiają czas działania algorytmu Partition w zależności od liczby podziałów na partycje. Dla zbioru accidents widoczne są niewielki różnice nasilające się 3
4 Rysunek 1: zbiór accidents Rysunek 2: zbiór kosarak Rysunek 3: zbiór mushroom wraz ze zmniejszaniem progu wsparcia. Jak już opisano wcześniej, im mniejszy próg wsparcia, tym więcej w pierwszej fazie działania algorytmu Partition zostanie wygenerowanych zbiorów lokalnie częstych, których globalną częstość będzie trzeba zweryfikować w drugiej fazie. Liczba ta w oczywisty sposób zwiększa się także ze zwiększaniem liczby podziałów. Zbiór, który nie był częsty w określonym zbiorze transakcji, może okazać się 4
5 1 1 accidents kosarak mushroom 1 liczba reguł Rysunek 4: liczba reguł częsty w pewnym podzbiorze tego zbioru. Dla problemu mushroom zjawisko to jest szczególnie bolesne dla liczby podziałów wynoszącej partycje 3 partycje 4 partycje Rysunek 5: liczba podziałów zbiór accidents partycje 3 partycje 4 partycje Rysunek 6: liczba podziałów zbiór mushroom 5
6 Zajętość pamięciowa maksymalna zajętość pamięci [kb] accidents mushroom kosarak accidents mushroom kosarak Rysunek 7: zajętość pamięci Wykres 7 przedstawia maksymalną zajętość pamięci dla poszczególnych zbiorów danych i algorytmów. Dość nieintuicyjny wydaje się fakt, iż dla zbiorów accidents oraz kosarak zajętość pamięciowa Partition jest mniejsza niż Apriori. Zjawisko to można próbować wyjaśnić w następujący sposób. Momentem, w którym algorytm Apriori zajmował najwięcej pamięci, mogła być chwila, gdy wygenerowane zostały wszystkie kandydujące zbiory częste o określonej liczności x. Partition, ze względu na dzielenie zbioru danych, nie przechowuje jednocześnie wszystkich możliwych x-kandydatów. Przed wygenerowaniem kolejnej ich partii, dawno już zweryfikowani są (i zapewne w większości odrzuceni) x-kandydaci z poprzedniej partycji. Teoretycznie możliwe jest, iż ilość danych wykorzystana na przechowywanie potencjalnych zbiorów częstych z poprzednich partycji oraz tych danych, na których algorytm Partition aktualnie operuje, nie przewyższyła wielkością zbioru x-kandydatów przechowywanego w pewnym momencie czasu przez Apriori. 6
7 Równoległe Partition Wykres 8 przedstawia porównanie działania algorytmów Apriori, sekwencyjnego Partition oraz zrównoleglonego Partition przy wykorzystaniu coraz większej liczby wątków. Ponieważ badane algorytmy zakładają, że dane mogą potencjalnie nie mieścić się w pamięci operacyjnej, zadbano o utrzymanie tego ograniczenia (choć dla badanych zbiorów na zastosowanej maszynie były one sztuczne). Innymi słowy, jeśli algorytmy Apriori i sekwencyjny Partition wczytywały za jednym razem do pamięci partycję o określonej wielkości, to dwuwątkowy Partition operował na partycjach dwukrotnie mniejszych. Warto zauważyć, że zrównoleglenie algorytmu Partition miało bardzo prosty charakter, jedynymi miejscami synchronizacji był odczyt danych, faza sumowania zbiorów kandydujących zbiorów częstych pomiędzy etapami przetwarzania oraz zsumowanie liczników na końcu działania algorytmu znajdowania zbiorów częstych (generowanie reguł nie zostało zrównoleglone). W przypadku wystarczająco dużej objętości danych wejściowych, warto byłoby rozważyć implementację algorytmu Partition w środowisku klastrowym przy użyciu bibliotek PVM lub MPI. 1 1 (sekwencyjnie) (2 wątki) (3 wątki) (4 wątki) Rysunek 8: sekwencyjnie i równolegle zbiór accidents 7
8 Symulacja opóźnień odczytu Ze względu na fakt, że potencjalna przewaga algorytmu Partition nad innymi rozwiązaniami problemu znajdowania reguł asocjacyjnych polega na jedynie dwukrotnym odczycie całej bazy danych, jego sprawność względnym innych algorytmów w istotny sposób zależy od charakteru operacji odczytu danych. Podczas badań dane odczytywane były z tekstowego pliku znajdującego się lokalnie na dysku twardym, proces wczytywania danych został dodatkowo zoptymalizowany; skutkiem tego w uzyskanych i przedstawionych powyżej wynikach przewaga algorytmu Partition nad Apriori była nieduża lub nie występowała. Dokonano zatem dodatkowych badań wprowadzając kary za odczyt każdego elementu oraz transakcji jako całości (ich wartości dobrano w sposób arbitralny). Symulują one np. dostęp do zdalnej bazy danych. Opóźnienia określone jako niewielkie : to.1µs dla każdego elementu oraz dodatkowo 3µs dla każdej transakcji, kary duże to odpowiednio.4µs oraz 12µs (czyli czterokrotnie więcej). Wykresy 9, 1 oraz 11 przedstawiają porównanie pomiędzy algorytmami Apriori oraz sekwencyjnym Partition kolejno przy braku opóźnień, niewielkich opóźnieniach i dużych opóźnieniach. Wyraźnie widać, że wraz ze zwiększaniem kosztu odczytu danych, przewaga algorytmu Partition wzrasta Rysunek 9: Apriori i Partition brak opóźnień Rysunek 1: Apriori i Partition niewielkie opóźnienia 8
9 Rysunek 11: Apriori i Partition duże opóźnienia 9
Raport Hurtownie Danych
Raport Hurtownie Danych Algorytm Apriori na indeksie bitmapowym oraz OpenCL Mikołaj Dobski, Mateusz Jarus, Piotr Jessa, Jarosław Szymczak Cel projektu: Implementacja algorytmu Apriori oraz jego optymalizacja.
Bardziej szczegółowoSprawozdanie z laboratorium: Hurtownie Danych. Algorytm generowania reguł asocjacyjnych. FP-Growth. 9 czerwca 2011
Sprawozdanie z laboratorium: Hurtownie Danych Algorytm generowania reguł asocjacyjnych 9 czerwca 2011 Prowadzący: dr inż. Izabela Szczęch dr inż. Szymon Wilk Autorzy: Łukasz Idkowiak Tomasz Kamiński Jacek
Bardziej szczegółowoZarządzanie pamięcią w systemie operacyjnym
Zarządzanie pamięcią w systemie operacyjnym Cele: przydział zasobów pamięciowych wykonywanym programom, zapewnienie bezpieczeństwa wykonywanych procesów (ochrona pamięci), efektywne wykorzystanie dostępnej
Bardziej szczegółowoINDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH
INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH 1. Czym jest eksploracja danych Eksploracja danych definiowana jest jako zbiór technik odkrywania nietrywialnych zależności i schematów w dużych
Bardziej szczegółowoRównoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami
Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami dr inż. Mariusz Uchroński Wrocławskie Centrum Sieciowo-Superkomputerowe Agenda Cykliczny problem przepływowy
Bardziej szczegółowoAlgorytm DIC. Dynamic Itemset Counting. Magdalena Przygórzewska Karolina Stanisławska Aleksander Wieczorek
Algorytm DIC Dynamic Itemset Counting Magdalena Przygórzewska Karolina Stanisławska Aleksander Wieczorek Spis treści 1 2 3 4 Algorytm DIC jako rozszerzenie apriori DIC Algorytm znajdowania reguł asocjacyjnych
Bardziej szczegółowoCUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu
CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki
Bardziej szczegółowoAnaliza ilościowa w przetwarzaniu równoległym
Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2
Bardziej szczegółowoAiSD zadanie trzecie
AiSD zadanie trzecie Gliwiński Jarosław Marek Kruczyński Konrad Marek Grupa dziekańska I5 5 czerwca 2008 1 Wstęp Celem postawionym przez zadanie trzecie było tzw. sortowanie topologiczne. Jest to typ sortowania
Bardziej szczegółowoPrzygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,
Przetwarzanie równoległe PROJEKT OMP i CUDA Temat projektu dotyczy analizy efektywności przetwarzania równoległego realizowanego przy użyciu komputera równoległego z procesorem wielordzeniowym z pamięcią
Bardziej szczegółowoData Mining Wykład 3. Algorytmy odkrywania binarnych reguł asocjacyjnych. Plan wykładu
Data Mining Wykład 3 Algorytmy odkrywania binarnych reguł asocjacyjnych Plan wykładu Algorytm Apriori Funkcja apriori_gen(ck) Generacja zbiorów kandydujących Generacja reguł Efektywności działania Własności
Bardziej szczegółowoPrzykładowe sprawozdanie. Jan Pustelnik
Przykładowe sprawozdanie Jan Pustelnik 30 marca 2007 Rozdział 1 Sformułowanie problemu Tematem pracy jest porównanie wydajności trzech tradycyjnych metod sortowania: InsertionSort, SelectionSort i BubbleSort.
Bardziej szczegółowoZadania laboratoryjne i projektowe - wersja β
Zadania laboratoryjne i projektowe - wersja β 1 Laboratorium Dwa problemy do wyboru (jeden do realizacji). 1. Water Jug Problem, 2. Wieże Hanoi. Water Jug Problem Ograniczenia dla każdej z wersji: pojemniki
Bardziej szczegółowoNumeryczna algebra liniowa
Numeryczna algebra liniowa Numeryczna algebra liniowa obejmuje szereg algorytmów dotyczących wektorów i macierzy, takich jak podstawowe operacje na wektorach i macierzach, a także rozwiązywanie układów
Bardziej szczegółowoWydajność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność obliczeń równoległych Podobnie jak w obliczeniach sekwencyjnych, gdzie celem optymalizacji wydajności było maksymalne
Bardziej szczegółowoSkalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Skalowalność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność Przy rozważaniu wydajności przetwarzania (obliczeń, komunikacji itp.) często pojawia się pojęcie skalowalności
Bardziej szczegółowoIndeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na
Techniki indeksowania w eksploracji danych Maciej Zakrzewicz Instytut Informatyki Politechnika Poznańska Plan prezentacji Zastosowania indeksów w systemach baz danych Wprowadzenie do metod eksploracji
Bardziej szczegółowoStrojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i
VI Seminarium PLOUG Warszawa Styczeñ 2003 Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i Marcin Przepiórowski Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 7 1. Wstęp
Bardziej szczegółowoReguły asocjacyjne. 1. Uruchom system weka i wybierz aplikację Knowledge Flow.
Reguły asocjacyjne Niniejsze ćwiczenie demonstruje działanie implementacji algorytmu apriori w systemie WEKA. Ćwiczenie ma na celu zaznajomienie studenta z działaniem systemu WEKA oraz znaczeniem podstawowych
Bardziej szczegółowoHierarchiczna analiza skupień
Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym
Bardziej szczegółowoUniwersytet Mikołaja Kopernika. Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej
Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin HENRYKOWSKI Nr albumu: 158069 Praca magisterska na kierunku Informatyka Archiwizacja
Bardziej szczegółowoParametry techniczne. Testy
Dyski SSD stają się pomału podstawą każdego komputera. Dzięki swoim parametrom, które pod wieloma względami biją klasyczne konstrukcje HDD, oferują niezwykle wysoką wydajność. Przekłada się to między innymi
Bardziej szczegółowoKolekcje. Na podstawie:
Kolekcje Na podstawie: http://wazniak.mimuw.edu.pl Kolekcje w Javie Kolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór. Pozwala na zapis, odczyt, korzystanie z danych oraz
Bardziej szczegółowoMetody eksploracji danych. Reguły asocjacyjne
Metody eksploracji danych Reguły asocjacyjne Analiza podobieństw i koszyka sklepowego Analiza podobieństw jest badaniem atrybutów lub cech, które są powiązane ze sobą. Metody analizy podobieństw, znane
Bardziej szczegółowoAnaliza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015
Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Źródła kosztów przetwarzania współbieżnego interakcje między procesami
Bardziej szczegółowoTworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych W procesie tworzenia programów równoległych istnieją dwa kroki o zasadniczym znaczeniu: wykrycie
Bardziej szczegółowoAproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
Bardziej szczegółowoTworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych W procesie tworzenia programów równoległych istnieją dwa kroki o zasadniczym znaczeniu: wykrycie
Bardziej szczegółowoTest dysku Intel SSD DC S3500 480GB. Wpisany przez Mateusz Ponikowski Wtorek, 22 Październik 2013 16:22
W połowie bieżącego roku na rynku pojawiły się profesjonalne nośniki Intel z serii DC S3500. Producent deklaruje, że sprzęt przeznaczony jest do bardziej wymagających zastosowań takich jak centra danych
Bardziej szczegółowoPodstawy Przetwarzania Sygnałów
Adam Szulc 188250 grupa: pon TN 17:05 Podstawy Przetwarzania Sygnałów Sprawozdanie 6: Filtracja sygnałów. Filtry FIT o skończonej odpowiedzi impulsowej. 1. Cel ćwiczenia. 1) Przeprowadzenie filtracji trzech
Bardziej szczegółowoZadanie projektowe 1: Struktury danych i złożoność obliczeniowa
Łukasz Przywarty 171018 Data utworzenia: 24.03.2010r. Mariusz Kacała 171058 Prowadzący: prof. dr hab. inż. Adam Janiak oraz dr inż. Tomiasz Krysiak Zadanie projektowe 1: Struktury danych i złożoność obliczeniowa
Bardziej szczegółowoProgramowanie współbieżne Wykład 2. Iwona Kochańska
Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas
Bardziej szczegółowoWykorzystanie architektury Intel MIC w obliczeniach typu stencil
Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Kamil Halbiniak Wydział Inżynierii Mechanicznej i Informatyki Kierunek informatyka, Rok IV Instytut Informatyki Teoretycznej i Stosowanej
Bardziej szczegółowoPamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4
Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,
Bardziej szczegółowoARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
Bardziej szczegółowoXQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
Bardziej szczegółowoSpis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII
Spis treści Od autora..................................................... Obliczenia inżynierskie i naukowe.................................. X XII Ostrzeżenia...................................................XVII
Bardziej szczegółowoArchitektura potokowa RISC
Architektura potokowa RISC Podział zadania na odrębne części i niezależny sprzęt szeregowe Brak nawrotów" podczas pracy potokowe Przetwarzanie szeregowe i potokowe Podział instrukcji na fazy wykonania
Bardziej szczegółowoAnaliza efektywności przetwarzania współbieżnego
Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak 1/4/2013 Analiza efektywności 1 Źródła kosztów przetwarzania współbieżnego interakcje
Bardziej szczegółowoAlgorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bardziej szczegółowoSystem obliczeniowy laboratorium oraz. mnożenia macierzy
System obliczeniowy laboratorium.7. oraz przykładowe wyniki efektywności mnożenia macierzy opracował: Rafał Walkowiak Materiały dla studentów informatyki studia niestacjonarne październik 1 SYSTEMY DLA
Bardziej szczegółowow analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna
Bardziej szczegółowoDystrybucja oprogramowania przez portal PSB
Dystrybucja oprogramowania przez portal PSB Istnieją trzy sposoby dystrybucji oprogramowania na stacje końcowe: Zaproszenie przez wiadomość E-mail Pobranie oprogramowania z portalu PSB Urządzenie do zdalnej
Bardziej szczegółowoProjektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012
Projektowanie algorytmów równoległych Zbigniew Koza Wrocław 2012 Spis reści Zadniowo-kanałowy (task-channel) model algorytmów równoległych Projektowanie algorytmów równoległych metodą PACM Task-channel
Bardziej szczegółowo1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.
Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna
Bardziej szczegółowoMETODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. EKSPLORACJA DANYCH Ćwiczenia. Adrian Horzyk. Akademia Górniczo-Hutnicza
METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING EKSPLORACJA DANYCH Ćwiczenia Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Bardziej szczegółowoZarys algorytmów kryptograficznych
Zarys algorytmów kryptograficznych Laboratorium: Algorytmy i struktury danych Spis treści 1 Wstęp 1 2 Szyfry 2 2.1 Algorytmy i szyfry........................ 2 2.2 Prosty algorytm XOR......................
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 12 Wspomaganie systemu operacyjnego: pamięć wirtualna Partycjonowanie Pamięć jest dzielona, aby mogło korzystać z niej wiele procesów. Dla jednego procesu przydzielana jest
Bardziej szczegółowoPamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com
Pamięć wirtualna Jan Tuziemski Źródło części materiałów: os-book.com Pamięć wirtualna Na poprzednich wykładach omówiono sposoby zarządzania pamięcią Są one potrzebne ponieważ wykonywane rozkazy procesów
Bardziej szczegółowoMetody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa
Metody eksploracji danych w odkrywaniu wiedzy (MED) projekt, dokumentacja końcowa Konrad Miziński 14 stycznia 2015 1 Temat projektu Grupowanie hierarchiczne na podstawie algorytmu k-średnich. 2 Dokumenty
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Plan wykładu Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka spójności
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Przydział ciągły (ang. contiguous allocation) cały plik zajmuje ciąg kolejnych bloków Przydział listowy (łańcuchowy, ang. linked
Bardziej szczegółowoOSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA
OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 16.01.2003 Algorytmy i Struktury Danych PIŁA ALGORYTMY ZACHŁANNE czas [ms] Porównanie Algorytmów Rozwiązyjących problem TSP 100 000 000 000,000 10 000 000
Bardziej szczegółowoModułowy programowalny przekaźnik czasowy firmy Aniro.
Modułowy programowalny przekaźnik czasowy firmy Aniro. Rynek sterowników programowalnych Sterowniki programowalne PLC od wielu lat są podstawowymi systemami stosowanymi w praktyce przemysłowej i stały
Bardziej szczegółowoKolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór.
Kolekcje Kolekcje w Javie Kolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór. Pozwala na zapis, odczyt, korzystanie z danych oraz ich wzajemną komunikację. Przykład: ręka
Bardziej szczegółowoBudowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Bardziej szczegółowoAnaliza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Bardziej szczegółowoAlgorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych
Bardziej szczegółowoTworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Metodologia programowania równoległego Przykłady podziałów zadania na podzadania: Podział ze względu na funkcje (functional
Bardziej szczegółowoUkłady sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).
Ćw. 10 Układy sekwencyjne 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną układy rejestrów
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki
Bardziej szczegółowo1. Odkrywanie asocjacji
1. 2. Odkrywanie asocjacji...1 Algorytmy...1 1. A priori...1 2. Algorytm FP-Growth...2 3. Wykorzystanie narzędzi Oracle Data Miner i Rapid Miner do odkrywania reguł asocjacyjnych...2 3.1. Odkrywanie reguł
Bardziej szczegółowoUKŁADY MIKROPROGRAMOWALNE
UKŁAD MIKROPROGRAMOWALNE Układy sterujące mogą pracować samodzielnie, jednakże w przypadku bardziej złożonych układów (zwanych zespołami funkcjonalnymi) układ sterujący jest tylko jednym z układów drugim
Bardziej szczegółowoDr inż. hab. Siergiej Fialko, IF-PK,
Dr inż. hab. Siergiej Fialko, IF-PK, http://torus.uck.pk.edu.pl/~fialko sfialko@riad.pk.edu.pl 1 Osobliwości przedmiotu W podanym kursie główna uwaga będzie przydzielona osobliwościom symulacji komputerowych
Bardziej szczegółowoOptymalizacja wydajności dysków pendrive. Cluster alignment.
Optymalizacja wydajności dysków pendrive. Cluster alignment. Na wielu forach internetowych można spotkać się z pytaniami o przyczynę małej wydajności dysków przenośnych pendrive. Ludzie skarżą się, że
Bardziej szczegółowoPrzetwarzanie równoległe Zadanie domowe III
Przetwarzanie równoległe Zadanie domowe III Jarosław Marek Gliwiński #indeksu 7439 16 stycznia 010 1 Wstęp 1.1 Wykaz skrótów i oznaczeń W pierwszej kolejności przedstawione zostaną używane w pracy oznaczenia,
Bardziej szczegółowoSYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 006 Wydajność systemu 2 SO i SK/WIN Najprostszym sposobem na poprawienie wydajności systemu, jeżeli dysponujemy zbyt małą ilością pamięci RAM
Bardziej szczegółowoData Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu
Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu
Bardziej szczegółowoMESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra
MESco Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075 Stanisław Wowra swowra@mesco.com.pl Lider w dziedzinie symulacji na rynku od 1994 roku. MESco
Bardziej szczegółowoRównoległość i współbieżność
Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna
Bardziej szczegółowoRównoległość i współbieżność
Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna
Bardziej szczegółowoSystem wspomagania harmonogramowania przedsięwzięć budowlanych
System wspomagania harmonogramowania przedsięwzięć budowlanych Wojciech Bożejko 1 Zdzisław Hejducki 2 Mariusz Uchroński 1 Mieczysław Wodecki 3 1 Instytut Informatyki, Automatyki i Robotyki Politechnika
Bardziej szczegółowoOSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA
OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 20.11.2002 Algorytmy i Struktury Danych PIŁA ZŁOŻONE STRUKTURY DANYCH C za s tw or ze nia s tr uk tur y (m s ) TWORZENIE ZŁOŻONYCH STRUKTUR DANYCH: 00 0
Bardziej szczegółowoWprowadzenie do złożoności obliczeniowej
problemów Katedra Informatyki Politechniki Świętokrzyskiej Kielce, 16 stycznia 2007 problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów
Bardziej szczegółowoPodstawy Informatyki Systemy sterowane przepływem argumentów
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer
Bardziej szczegółowoPROJEKT 3 PROGRAMOWANIE RÓWNOLEGŁE. K. Górzyński (89744), D. Kosiorowski (89762) Informatyka, grupa dziekańska I3
PROJEKT 3 PROGRAMOWANIE RÓWNOLEGŁE K. Górzyński (89744), D. Kosiorowski (89762) Informatyka, grupa dziekańska I3 17 lutego 2011 Spis treści 1 Opis problemu 2 2 Implementacja problemu 3 2.1 Kod współdzielony........................
Bardziej szczegółowoZasady analizy algorytmów
Zasady analizy algorytmów A więc dziś w programie: - Kilka ważnych definicji i opisów formalnych - Złożoność: czasowa i pamięciowa - Kategorie problemów - Jakieś przykłady Problem: Zadanie możliwe do rozwiązania
Bardziej szczegółowoSystemy Wspomagania Decyzji
Reguły Asocjacyjne Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności March 18, 2014 1 Wprowadzenie 2 Definicja 3 Szukanie reguł asocjacyjnych 4 Przykłady użycia 5 Podsumowanie Problem Lista
Bardziej szczegółowo61 Topologie wirtualne
61 Topologie wirtualne pozwalają opisać dystrybucję procesów w przestrzeni z uwzględnieniem struktury komunikowania się procesów aplikacji między sobą, umożliwiają łatwą odpowiedź na pytanie: kto jest
Bardziej szczegółowoSpacery losowe generowanie realizacji procesu losowego
Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z
Bardziej szczegółowoPRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE. Mnożenie macierzy kwadratowych metodą klasyczną oraz blokową z wykorzystaniem OpenMP.
P O L I T E C H N I K A S Z C Z E C I Ń S K A Wydział Informatyki PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE. Mnożenie macierzy kwadratowych metodą klasyczną oraz blokową z wykorzystaniem OpenMP. Autor: Wojciech
Bardziej szczegółowoBudowa komputera Komputer computer computare
11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału
Bardziej szczegółowo1 Moduł Modbus ASCII/RTU 3
Spis treści 1 Moduł Modbus ASCII/RTU 3 1.1 Konfigurowanie Modułu Modbus ASCII/RTU............. 3 1.1.1 Lista elementów Modułu Modbus ASCII/RTU......... 3 1.1.2 Konfiguracja Modułu Modbus ASCII/RTU...........
Bardziej szczegółowoAby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.
Generowanie sygnałów testowych VHDL Wariant współbieżny (bez procesu): sygnał
Bardziej szczegółowoStruktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski
Struktura systemu operacyjnego Schemat budowy systemu operacyjnego model warstwowy Schemat budowy systemu operacyjnego części składowe Większość systemów operacyjnych opiera się o koncepcję jądra, która
Bardziej szczegółowoSCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO
SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO. Rzeczywistość (istniejąca lub projektowana).. Model fizyczny. 3. Model matematyczny (optymalizacyjny): a. Zmienne projektowania
Bardziej szczegółowoProgramowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Bardziej szczegółowoLaboratorium nr 5 Podpis elektroniczny i certyfikaty
Laboratorium nr 5 Podpis elektroniczny i certyfikaty Wprowadzenie W roku 2001 Prezydent RP podpisał ustawę o podpisie elektronicznym, w która stanowi że podpis elektroniczny jest równoprawny podpisowi
Bardziej szczegółowoLiteratura. 11/16/2016 Przetwarzanie równoległe - wstęp 1
Literatura 1. Wprowadzenie do obliczeń równoległych, Zbigniew Czech, Wydawnictwo Naukowe PWN, 2010, 2013 2. Introduction to Parallel Computing; Grama, Gupta, Karypis, Kumar; Addison Wesley 2003 3. Designing
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Implementacja i porównanie wydajności wybranych algorytmów grafowych w warunkach obliczeń równoległych Autor pracy: Michał Podstawski Promotor: Prof. WSTI, dr hab.
Bardziej szczegółowoTworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych W procesie tworzenia programów równoległych istnieją dwa kroki o zasadniczym znaczeniu: wykrycie
Bardziej szczegółowoAlgorytmy sztucznej inteligencji
www.math.uni.lodz.pl/ radmat Przeszukiwanie z ograniczeniami Zagadnienie przeszukiwania z ograniczeniami stanowi grupę problemów przeszukiwania w przestrzeni stanów, które składa się ze: 1 skończonego
Bardziej szczegółowoZarządzanie pamięcią operacyjną
SOE Systemy Operacyjne Wykład 7 Zarządzanie pamięcią operacyjną dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Hierarchia pamięci czas dostępu Rejestry Pamięć podręczna koszt
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowo1. Podstawy...P Polecenia podstawowe...p... 18
Spis treści Wstęp...P... 5 1. Podstawy...P... 7 Wersje systemu MS-DOS 8 Windows NT: konsola czy DOS? 9 Jak uruchomić system MS-DOS 10 Szybkie uruchamianie 13 Okno a pełny ekran 14 Windows 2000/XP a pełnoekranowe
Bardziej szczegółowoBadania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle
Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle Paweł Szołtysek 12 czerwca 2008 Streszczenie Planowanie produkcji jest jednym z problemów optymalizacji dyskretnej,
Bardziej szczegółowoWymagania systemowe oraz sposób instalacji systemu Lokale Spis treści
Wymagania systemowe oraz sposób instalacji systemu Lokale Spis treści Wymagania sprzętowe i systemowe :...2 Instalacja dla systemów Windows 32-bit...3 Instalacja dla systemów Windows 64-bit/Linux...6 1
Bardziej szczegółowo