Równoległy algorytm analizy sygnału na podstawie niewielkiej liczby próbek



Podobne dokumenty
ALGORYTM IDENTYFIKACJI SKŁADOWYCH SINUSOIDALNYCH ZŁOŻONEGO SYGNAŁU NA PODSTAWIE JEGO LOSOWO POBRANYCH PRÓBEK

POMIAR PARAMETRÓW SYGNAŁOW NAPIĘCIOWYCH METODĄ PRÓKOWANIA I CYFROWEGO PRZETWARZANIA SYGNAŁU

DYNAMIKA KONSTRUKCJI

Rys.1. Podstawowa klasyfikacja sygnałów

imei 1. Cel ćwiczenia 2. Zagadnienia do przygotowania 3. Program ćwiczenia

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Podstawy Automatyki

POZYCJONOWANIE I NADĄŻANIE MINIROBOTA MOBILNEGO M.R.K

LABORATORIUM PODSTAWY ELEKTRONIKI Badanie Bramki X-OR

POMIARY CZĘSTOTLIWOŚCI I PRZESUNIĘCIA FAZOWEGO SYGNAŁÓW OKRESOWYCH. Cel ćwiczenia. Program ćwiczenia

ROCZNIKI INŻYNIERII BUDOWLANEJ ZESZYT 7/2007 Komisja Inżynierii Budowlanej Oddział Polskiej Akademii Nauk w Katowicach

IMPLEMENTACJA WYBRANYCH METOD ANALIZY STANÓW NIEUSTALONYCH W ŚRODOWISKU MATHCAD

ANALIZA HARMONICZNA RZECZYWISTYCH PRZEBIEGÓW DRGAŃ

Laboratorium z PODSTAW AUTOMATYKI, cz.1 EAP, Lab nr 3

ĆWICZENIE 4 Badanie stanów nieustalonych w obwodach RL, RC i RLC przy wymuszeniu stałym

C d u. Po podstawieniu prądu z pierwszego równania do równania drugiego i uporządkowaniu składników lewej strony uzyskuje się:

ψ przedstawia zależność

ESTYMACJA KRZYWEJ DOCHODOWOŚCI STÓP PROCENTOWYCH DLA POLSKI

WNIOSKOWANIE STATYSTYCZNE

POMIARY CZĘSTOTLIWOŚCI I PRZESUNIĘCIA FAZOWEGO SYGNAŁÓW OKRESOWYCH

WYKORZYSTANIE TESTU OSTERBERGA DO STATYCZNYCH OBCIĄŻEŃ PRÓBNYCH PALI

Wskazówki projektowe do obliczania nośności i maksymalnego zanurzenia statku rybackiego na wstępnym etapie projektowania

Analityczny opis łączeniowych strat energii w wysokonapięciowych tranzystorach MOSFET pracujących w mostku

WSTĘP DO ELEKTRONIKI

PROGRAMOWY GENERATOR PROCESÓW STOCHASTYCZNYCH LEVY EGO

Warstwa fizyczna. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa. Sieciowa. Sieciowa.

Wykład 5 Elementy teorii układów liniowych stacjonarnych odpowiedź na dowolne wymuszenie

Wydział Elektryczny, Katedra Maszyn, Napędów i Pomiarów Elektrycznych Laboratorium Przetwarzania i Analizy Sygnałów Elektrycznych

METROLOGICZNE WŁASNOŚCI SYSTEMU BADAWCZEGO

A C T A U N I V E R S I T A T I S N I C O L A I C O P E R N I C I EKONOMIA XLIII nr 2 (2012)

Całka nieoznaczona Andrzej Musielak Str 1. Całka nieoznaczona

Postęp techniczny. Model lidera-naśladowcy. Dr hab. Joanna Siwińska-Gorzelak

Architektura Systemów Komputerowych. Architektura potokowa Klasyfikacja architektur równoległych

Podstawy Elektroniki dla Elektrotechniki

PAlab_4 Wyznaczanie charakterystyk częstotliwościowych

Jednofazowe przekształtniki DC AC i AC DC z eliminacją składowej podwójnej częstotliwości po stronie DC

ĆWICZENIE NR 43 U R I (1)

PROPOZYCJA NOWEJ METODY OKREŚLANIA ZUŻYCIA TECHNICZNEGO BUDYNKÓW

AMD. Wykład Elektrotechnika z elektroniką

Badanie funktorów logicznych TTL - ćwiczenie 1

Sformułowanie Schrödingera mechaniki kwantowej. Fizyka II, lato

Kombinowanie prognoz. - dlaczego należy kombinować prognozy? - obejmowanie prognoz. - podstawowe metody kombinowania prognoz

Metody rachunku kosztów Metoda rachunku kosztu działań Podstawowe pojęcia metody ABC Kalkulacja obiektów kosztowych metodą ABC Zasobowy rachunek

Układy sekwencyjne asynchroniczne Zadania projektowe

Spis treści ZASTOSOWANIE PAKIETU MATLAB W OBLICZENIACH ZAGADNIEŃ ELEKTRYCZNYCH I41

Cyfrowe przetwarzanie sygnału przetwornika obrotowo-impulsowego

PREDYKCJA KURSU EURO/DOLAR Z WYKORZYSTANIEM PROGNOZ INDEKSU GIEŁDOWEGO: WYBRANE MODELE EKONOMETRYCZNE I PERCEPTRON WIELOWARSTWOWY

Ruch płaski. Bryła w ruchu płaskim. (płaszczyzna kierująca) Punkty bryły o jednakowych prędkościach i przyspieszeniach. Prof.

Ćwiczenie 133. Interferencja fal akustycznych - dudnienia. Wyznaczanie częstotliwości dudnień. Teoretyczna częstotliwość dudnienia dla danego pomiaru

Wykład 4 Metoda Klasyczna część III

Wydział Elektroniki Mikrosystemów i Fotoniki Politechniki Wrocławskiej STUDIA DZIENNE. Przełącznikowy tranzystor mocy MOSFET

Wyznaczanie temperatury i wysokości podstawy chmur

PROGNOZOWANIE I SYMULACJE EXCEL 2 PROGNOZOWANIE I SYMULACJE EXCEL AUTOR: ŻANETA PRUSKA

Pobieranie próby. Rozkład χ 2

PROGNOZOWANIE I SYMULACJE EXCEL 2 AUTOR: MARTYNA MALAK PROGNOZOWANIE I SYMULACJE EXCEL 2 AUTOR: MARTYNA MALAK

2.1 Zagadnienie Cauchy ego dla równania jednorodnego. = f(x, t) dla x R, t > 0, (2.1)

RÓWNANIA RÓŻNICZKOWE WYKŁAD 13

Metody badania wpływu zmian kursu walutowego na wskaźnik inflacji

Zastosowanie technologii SDF do lokalizowania źródeł emisji BPSK i QPSK

Ocena płynności wybranymi metodami szacowania osadu 1

DYNAMICZNE MODELE EKONOMETRYCZNE

Rozdział 4 Instrukcje sekwencyjne

LABORATORIUM PODSTAW ELEKTRONIKI PROSTOWNIKI

Szeregi Fouriera. Powyższe współczynniki można wyznaczyć analitycznie z następujących zależności:

Wyznaczanie charakterystyk częstotliwościowych

ĆWICZENIE 7 WYZNACZANIE LOGARYTMICZNEGO DEKREMENTU TŁUMIENIA ORAZ WSPÓŁCZYNNIKA OPORU OŚRODKA. Wprowadzenie

Estymacja stopy NAIRU dla Polski *

Dobór przekroju żyły powrotnej w kablach elektroenergetycznych

Podstawy elektrotechniki

SZACOWANIE MODELU RYNKOWEGO CYKLU ŻYCIA PRODUKTU

ANALIZA, PROGNOZOWANIE I SYMULACJA / Ćwiczenia 1

Przemysław Klęsk. Słowa kluczowe: analiza składowych głównych, rozmaitości algebraiczne

KLASYFIKACJA WARUNKÓW EKSPLOATACJI POJAZDÓW Z WYKORZYSTANIEM UDZIAŁU CZASU PRACY SILNIKA NA BIEGU JAŁOWYM

WYKORZYSTANIE STATISTICA DATA MINER DO PROGNOZOWANIA W KRAJOWYM DEPOZYCIE PAPIERÓW WARTOŚCIOWYCH

LINIA DŁUGA Konspekt do ćwiczeń laboratoryjnych z przedmiotu TECHNIKA CYFROWA

Katedra Systemów Przetwarzania Sygnałów SZEREGI FOURIERA

1.1. Bezpośrednie transformowanie napięć przemiennych

Ocena efektywności procedury Congruent Specyfication dla małych prób

Kobiety w przedsiębiorstwach usługowych prognozy nieliniowe

LABORATORIUM Z ELEKTRONIKI

ZASTOSOWANIE METODY OBLICZEŃ UPROSZCZONYCH DO WYZNACZANIA CZASU JAZDY POCIĄGU NA SZLAKU

Stanowisko laboratoryjne do badań przesuwników fazowych

Prognozowanie średniego miesięcznego kursu kupna USD

Politechnika Wrocławska Wydział Elektroniki, Katedra K-4. Klucze analogowe. Wrocław 2017

ZASTOSOWANIE WZMACNIACZY OPERACYJNYCH DO LINIOWEGO PRZEKSZTAŁCANIA SYGNAŁÓW. Politechnika Wrocławska

OCENA ZMIENNOŚCI ODPŁYWU W MAŁYCH ZLEWNIACH GÓRSKICH

OCENA ATRAKCYJNOŚCI INWESTYCYJNEJ AKCJI NA PODSTAWIE CZASU PRZEBYWANIA W OBSZARACH OGRANICZONYCH KRZYWĄ WYKŁADNICZĄ

Instrukcja do ćwiczenia laboratoryjnego. Badanie przerzutników

VII.5. Eksperyment Michelsona-Morleya.

PODSTAWY PROGRAMOWANIA STEROWNIKÓW PLC

Wyzwania praktyczne w modelowaniu wielowymiarowych procesów GARCH

Dynamiczne formy pełzania i relaksacji (odprężenia) górotworu

System zielonych inwestycji (GIS Green Investment Scheme)

WYKORZYSTANIE RACHUNKU WARIACYJNEGO DO ANALIZY WAHAŃ PRODUKCJI W PRZEDSIĘBIORSTWACH

Stanisław Cichocki Natalia Nehrebecka. Wykład 3

4.2. Obliczanie przewodów grzejnych metodą dopuszczalnego obciążenia powierzchniowego

Parytet stóp procentowych a premia za ryzyko na przykładzie kursu EURUSD

PROGNOZOWANIE I SYMULACJE. mgr Żaneta Pruska. Ćwiczenia 2 Zadanie 1

Politechnika Częstochowska Wydział Inżynierii Mechanicznej i Informatyki. Sprawozdanie #2 z przedmiotu: Prognozowanie w systemach multimedialnych

Składowe Fizyczne Prądu i Moce w Obwodach z Impulsowym Przepływem Energii

Instrukcja do ćwiczenia laboratoryjnego. Badanie liczników

Transkrypt:

Nauka Zezwala się na korzysanie z arykułu na warunkach licencji Creaive Commons Uznanie auorswa 3.0 Równoległy algorym analizy sygnału na podsawie niewielkiej liczby próbek Pior Kardasz Wydział Elekryczny, Poliechnika Białosocka Sreszczenie: W arykule przedsawiono równoległy algorym esymacji paramerów składowych sinusoidalnych złożonego sygnału. Proponowany algorym umożliwia rozpoznanie składowych sygnału również w warunkach, gdy dysponujemy ograniczoną liczbą losowo pobranych próbek ego sygnału. Zbadany zosał czas pracy zaproponowanego algorymu w funkcji liczby równocześnie uruchomionych wąków. Do esowania zosały zasosowane kompuery o różnej liczbie rdzeni procesora, obsługiwanych wąków oraz zmiennoprzecinkowych jednosek wykonawczych. Wyniki eksperymenu pokazują, że proponowany algorym może pracować efekywnie, nawe jeśli liczba wąków obliczeniowych przekracza liczbę jednosek wykonawczych procesora, na kórym pracuje. W arykule zosały również zarysowane kierunki dalszych badań nad udoskonaleniem przedsawionego algorymu. Słowa kluczowe: algorym równoległy, idenyfikacja sygnału DOI: 10.14313/PAR_04/11 1. Wprowadzenie Klasyczne algorymy analizy i przewarzania sygnałów jednowymiarowych przedsawionych w posaci dyskrenej, opare są na wykorzysaniu jednej z popularnych ransforma, akich jak ransformaa Fouriera, kosinusowa lub falkowa [1]. Meody e mogą być sosowane ylko wedy, gdy jes dosępny pełny zesaw próbek analizowanego sygnału, pobranych z częsoliwością próbkowania równą lub wyższą niż wynikająca z wierdzenia Koielnikowa-Shannona. Warunek en nie zawsze może być spełniony. Na skuek uszkodzeń nośnika, na kórym zapisany jes sygnał, zakłóceń zewnęrznych bądź przerw w orze ransmisyjnym możemy dysponować ylko częścią próbek, niezbędnych do analizy badanego sygnału. Isnieją również przypadki, w kórych pobranie pełnej liczby próbek badanego sygnału jes ze względów echnicznych niemożliwe, bądź eż zby koszowne [4]. Można wedy zasosować inensywnie rozwijającą się w osanich laach meodę analizy i ransmisji sygnału, określaną jako Compressed Sensing [, 3]. Polega ona na przygoowaniu niewielkiej liczby próbek sygnału i rekonsrukcji ego sygnału na ich podsawie. Jedna z najprosszych meod ego rodzaju polega na losowym odrzuceniu części próbek [] i rekonsrukcji sygnału na podsawie pozosałych. Rekonsrukcja sygnału na podsawie ego rodzaju danych jes możliwa za pomocą różnego rodzaju algorymów. Sosowane są w ym celu meody ypu basis pursui [3]. Możliwe są również inne podejścia, akie jak algorymy ewolucyjne [5 7, 10] i inne meody poszukiwania składowych rekonsruowanego sygnału [11]. Wszyskie e algorymy charakeryzują się jednak wysoką złożonością obliczeniową, a co za ym idzie, narzucają wysokie wymagania na moc obliczeniową sprzęu, na kórym są wykonywane. Jeśli jes ona zby niska, obliczenia wykonują się zby wolno, w szczególności nie mogą być wykonywane w czasie rzeczywisym. Klasyczne procedury obliczeniowe są wykonywane szeregowo, insrukcja po insrukcji, w jednym wąku. Współczesny sprzę kompuerowy jes jednak wyposażony w wielordzeniowe mikroprocesory. Każdy z ych rdzeni jes ma kilka jednosek arymeyczno-logicznych, mogących wykonywać operacje sałoprzecinkowe lub zmiennoprzecinkowe. Umożliwia o równoległą pracę wielu wąków obliczeniowych na ym samym procesorze. Algorymy, kóre mogą wykorzysać możliwości pracy wielowąkowej, mogą dzięki emu pracować szybciej, w pełni wykorzysując możliwości CPU. Procesory graficzne (GPU) dysponują jeszcze większą (nawe ponad 000) liczbą zmiennoprzecinkowych jednosek obliczeniowych, kóre mogą zosać użye do obliczeń dzięki zasosowaniu biblioek akich jak OpenCL, CUDA lub DirecCompue [8]. Wykorzysanie możliwości równoległego wykonywania obliczeń mogłoby pozwolić na znaczne przyspieszenie pracy algorymów analizy sygnałów. Innym sposobem uzyskania wyników obliczeń w krókim czasie jes zasosowanie programowalnych układów logicznych (FPGA) [9], kóre poza ym, że swarzają możliwość zaimplemenowania równoległych algorymów obliczeniowych, pozwalają akże na dososowanie możliwości projekowanych jednosek obliczeniowych do konkrenych porzeb danego algorymu. W większości przypadków algorymów równoległych nie jes możliwe równoległe wykonanie całej pracy. Część zadań akiego algorymu, na przykład przygoowanie danych i zebranie końcowych wyników obliczeń, musi być wykonana w pojedynczym wąku. Nie jes również na ogół możliwe doskonale równomierne rozdzielenie obli- 11

czeń pomiędzy wąki, wskuek czego o czasie pracy całego algorymu będzie decydował en wąek, kóry najpóźniej zakończy obliczenia. W ej syuacji zwiększanie liczby wąków nie skraca w sposób proporcjonalny czasu obliczeń. Zakładając, że mamy do dyspozycji nieograniczoną liczbę jednosek wykonawczych, wraz ze wzrosem liczby wąków czas en będzie dążył asympoycznie do pewnej niezerowej minimalnej warości, wyznaczonej przez e elemeny algorymu, kóre muszą zosać wykonane w jednym wąku, oraz minimalny czas obliczeń dla pojedynczego wąku. Ponieważ rzeczywise procesory dysponują skończoną liczbą jednosek wykonawczych, zwiększenie liczby wąków powyżej liczby ych jednosek nie pozwoli na dalsze przyspieszenie pracy algorymu, przeciwnie czas zużyy na przełączanie wąków spowoduje wzros całkowiego czasu obliczeń.. Cel i zakres badań Jednowąkowe algorymy [10, 11] rozpoznawania składowych sinusoidalnych sygnału na podsawie niewielkiej liczby jego próbek pracują długo ze względu na ich dużą złożoność obliczeniową. Celem badań było więc opracowanie i przeesowanie, na bazie isniejącego algorymu jednowąkowego [11], równoległego algorymu rozpoznawania składowych sinusoidalnych złożonego sygnału na podsawie jego losowo pobranych próbek i określenie, na podsawie wyników pomiarów, czy jes możliwe przeniesienie ego algorymu do środowisk o dużej liczbie równolegle wykonywanych wąków, akich jak procesory GPU i układy FPGA. Algorym ego rodzaju powinien pozwolić na uruchomienie go przy zadanej przez użykownika liczbie wąków. Algorym aki zosał opracowany i uruchomiony. Zbadany zosał czas wykonania opracowanego algorymu na kompuerach z procesorami o różnej liczbie i srukurze rdzeni w funkcji liczby przewarzanych równolegle wąków. Na podsawie przeprowadzonych pomiarów zosała określona możliwość przeniesienia badanego do środowisk o dużej liczbie jednosek wykonawczych, akich jak procesory GPU i układy FPGA oraz możliwości i kierunki dalszego rozwoju ego algorymu. 3. Badany algorym Oznacza o, że iloczyn akich funkcji zawiera niezerową składową sałą wedy i ylko wedy, gdy częsoliwości obu przebiegów sinusoidalnych są sobie równe; w przeciwnym przypadku składowa a jes zerowa. Jeśli więc scałkujemy aki sygnał, orzymamy dla a ¹ b funkcję okresową: sin( a b) sin( a + b) sin( a ) sin( b ) d = + C (3) ( a b) ( a + b) ale dla a = b funkcja a będzie niemalejąca: sin( a ) sin( a ) sin( a ) d = + C (4) a Jeśli więc sygnał badany ma posać sinusoidalną o ampliudzie A: f() = A sin(a) (5) zaś sygnał esujący ma ę samą częsoliwość, lecz jednoskową ampliudę, możemy na podsawie iloczynu ych sygnałów określić ampliudę sygnału badanego. Ponieważ: A( 1) A sin(a ) A sin(a 1) A sin( a) sin( a) d = + a a 1 więc Asin( a) sin( a) d 1 A = 1 1 ( 1) sin( a) + sin( a1) a a Jeśli 1 >> /a, można określić w przybliżeniu A A sin( a) sin( a ) d 1 ( a dla sygnałów dyskrenych: ) 1 (6) (7) (8) 3.1. Podsawy eoreyczne Podsawą do opracowania proponowanego algorymu [11] sało się sposrzeżenie, że iloczyn dwóch funkcji sinusoidalnych, kóry można przedsawić w posaci A n n= n1 A sin( ant ) sin( ant ) ( n n ) 1 (9) cos( a b) cos( a + b) sin( a ) sin( b ) = (1) redukuje się do 1 cos(a ) sin( a ) sin( a ) = () w przypadku, gdy a = b. Jeśli badany sygnał jes funkcją sinusoidalną przesunięą w fazie w sosunku do funkcji esującej, możemy rozłożyć go na składową sinusoidalną i kosinusoidalną sin( a + ϕ) = sin a cos ϕ + cos a sin ϕ (10) i oszacować ampliudy niezależnie dla obu składowych, po czym korzysając ze wzorów: Pomiary Auomayka Roboyka nr /014 113

Nauka A = + (11) A sin Acos A A sin ϕ = arcg (1) określić ampliudę i fazę badanego sygnału. Jeśli z jakiejś przyczyny mamy do dyspozycji ylko część próbek badanego sygnału, równanie (9) przyjmie posać: A N N cos P sin( ant ) n (13) gdzie N jes liczbą posiadanych próbek, a P n jes warością n-ej posiadanej próbki. Możemy więc nadal oszacować ampliudę badanego sygnału, choć z mniejszą dokładnością. Na podsawie powyższych sposrzeżeń zosał opracowany, uruchomiony i przeesowany jednowąkowy algorym [11], umożliwiający idenyfikację paramerów składowych sinusoidalnych złożonego sygnału. Algorym en był w sanie odnaleźć, z dokładnością rzędu kilku procen, siedem z ośmiu składowych sygnału na podsawie 18 próbek pobranych losowo spośród pełnego zesawu 048 próbek. Wyniki e są porównywalne z wynikami działania algorymu ewolucyjnego [10], przy znacznie większej szybkości obliczeń. 3.. Idea i działanie algorymu Czas pracy algorymu opisanego w [11], mimo że o rząd wielkości krószy, niż w przypadku algorymu ewolucyjnego [10], okazał się jednak zby długi, aby można go było zasosować w prakyce, np. w celu analizy sygnałów akusycznych. Analiza zesawu 048 próbek, co dla częsoliwości próbkowania 44 100 Hz sanowi 46,44 ms sygnału, rwała kilkadziesią sekund, czyli około ysiąckronie dłużej niż czas rwania sygnału. W ej syuacji powsała idea opracowania wielowąkowej wersji ego algorymu. Tak, jak i jednowąkowa jego wersja [11], algorym dokonuje mnożenia badanego sygnału przez sygnały esowe posaci oraz F F sin cos = sin(π f ) (14) = cos(π f ) (15) i na podsawie wyników ych mnożeń, zgodnie ze wzorami (11), (1) i (13), oblicza ampliudę i fazę dla każdej z esowanych częsoliwości. Nasępnie poszukiwane są warości maksymalne ampliudy w funkcji badanej częsoliwości. Odnalezione maksima rakowane są jako esymay składowych badanego sygnału. Częsoliwość sygnałów esowych zmienia się z krokiem 1 Hz. Mnożenie przez każdy z sygnałów esowych może być dokonane niezależnie od pozosałych. Dzięki emu algorym może być przygoowany w posaci wielowąkowej. W szczególności, gdybyśmy dysponowali sprzęem mogącym obsługiwać yle wąków, ile jes sygnałów esowych, wszyskie mnożenia mogłyby być wykonywane równolegle, co mogłoby skrócić obliczenia yle razy, ile jes sygnałów esowych. W przypadku badanego algorymu mamy do czynienia z 048 sygnałów esowych, więc w idealnym przypadku można przyspieszyć obliczenia 10 3 -kronie wysarczająco, aby algorym pracował w czasie rzeczywisym, pod warunkiem, że dysponujemy odpowiednią liczbą jednosek obliczeniowych. Warunek en spełniają nowoczesne kary graficzne oraz układy wykorzysujące logikę programowalną (FPGA). Opracowanie algorymów dla ych środowisk jes jednak czasochłonne i wymaga zasosowania odpowiednich narzędzi (języki HDL, środowiska OpenCL lub CUDA [8, 9]). Celowym więc wydawało się przed przysąpieniem do opracowania programu dla wymienionych środowisk przeesowanie możliwości algorymu równoległego w klasycznym środowisku PC. Współczesne procesory klasy x86 pozwalają na równoległą obsługę od do 1 wąków. W rzeczywisych algorymach równoległych czas obliczeń jes większy niż wynikałoby o z podzielenia czasu pracy algorymu jednowąkowego przez liczbę wąków. Dzieje się ak dlaego, że część zadań realizowanych przez algorym, np. przygoowanie danych i opracowanie wyników musi odbywać się w jednym wąku. Dodakowo, jeśli wąków jes więcej niż jednosek obliczeniowych maszyny, na kórej wykonywany jes algorym, porzebny jes dodakowy czas na przełączanie zadań. W przypadku badanego algorymu, oprócz procesów przygoowujących dane, nie można wykonać równolegle części obliczeń, polegających na odnalezieniu maksimów wśród wyników mnożeń. Poza ym procedura odnajdująca e maksima musi czekać, aż zakończy się praca osaniego z wąków wykonujących mnożenia. Algorym zosał opracowany w środowisku uruchomieniowym Lazarus przy użyciu modułu MTProcs. Moduł en pozwala na ławą implemenację algorymów równoległych przez obsługę równoległego uruchomienia wielu insancji ej samej procedury. Liczba uruchamianych wąków zadawana jes przez użykownika; każda z insancji procedury orzymuje swój niepowarzalny indeks, dzięki czemu może wykonać swoją część pracy niezależnie od innych insancji. W efekcie przeesowano czas pracy programu w funkcji liczby pracujących równolegle wąków. Czas pracy mierzony był za pomocą komponenu EpikTimer, korzysającego ze sprzęowych mechanizmów udosępnianych przez procesory klasy x86 pozwalającego na pomiar czasu z mikrosekundową rozdzielczością. Oprócz czasu przeznaczonego na obliczenia, mierzony był akże (w celach poglądowych i porównawczych) czas pracy całego programu oraz czas przeznaczony na wizualizację wyników. 4. Przebieg i wyniki badań Wsępny eap esów obejmował sprawdzenie, czy wyniki działania badanego algorymu są równoważne z wynikami algorymu jednowąkowego [11] oraz sprawdzenie, czy 114

zesaw danych esowych ma wpływ na czas pracy algorymu. Badany algorym okazał się, zgodnie z założeniami, równoważny algorymowi jednowąkowemu, dając e same wyniki, a posać danych esowych nie miała wpływu na czas pracy algorymu. W ej syuacji do dalszych pomiarów paramery sygnału esowego zosały wylosowane przy użyciu generaora liczb pseudolosowych (ab. 1). Pomiary czasu pracy badanego algorymu zosały wykonane na kompuerach, kórych paramery zosały przedsawione w ab.. Tab. 3. Czasy obliczeń w funkcji liczby wąków. Żółym kolorem oznaczono minimalny czas obliczeń dla każdego z zesawów esowych Tab. 3. Compuaion ime as a funcion of he number of hreads. Yellow indicaes he minimum calculaion ime for each of esed compuers Liczba wąków Czas obliczeń [s] dla poszczególnych kompuerów 1 3 4 5 6 Tab. 1. Paramery sygnału esowego Tab. 1. Parameers of he es signal 1 18,34 0,06 19,99 15,34 1,17 1,47 Składowa Ampliuda A Częsoliwość f [Hz] Faza φ[sopnie] 9,75 10,76 10,05 7,75 10,63 11,08 3 6,77 6,91 6,78 6,11 7, 1,9 1 0,944 199 9 0,471 1006 101 3 0,350 1358 90 4 0,53 1759 16 5 0,19 1866 18 6 0,19 1704 13 7 0,073 503 104 4 5,46 5, 5,7 4,71 5,5 11,04 5 5,86 7,8 8,10 5,90 4,70 1,7 6 4,88 7,19 7,36 5,34 4,03 11,59 7 4,70 5,97 6,9 5,36 4,8 11,51 8 4,6 5,4 5,40 4,77 4,5 11,18 9 5,35 6,51 7,0 5,40 3,76 11,51 8 0,068 411 16 10 5,15 5,93 6,69 5,11 3,73 11,8 Tab.. Paramery kompuerów użyych do esów Tab.. Parameers of he compuers used for esing 11 4,9 5,91 6,1 5, 3,80 11,59 1 4,74 5,81 5,6 4,78 3,58 11,40 Lp. Procesor Liczba wąków Liczba rdzeni Częsoliwość pracy [GHz] 13 4,70 6,39 7,31 5,09 4,15 11,40 14 4,56 5,93 6,48 5,01 4,06 11,14 1 AMD FX-830 8 (4 moduły) 8 4, 15 4,5 5,87 6,06 4.89 3,69 11,44 AMD FX-830 (ryb 4 rdzeni) 4 4 4, 16 4,59 5,81 5,61 4,80 3,78 11,38 3 Inel i5 4 4 3,3 0 4,73 5,80 5,67 4,8 3,35 11, 4 Inel i3 4 3,8 4 4,40 5,80 5,67 4,83 3,1 11,34 5 Inel i7 6 1 3,3 8 4,53 5,8 5,7 4,81 3,34 11,4 6 AMD A64x,4 3 4,39 5,84 5,63 4,8 3,33 11,47 Pomiary Auomayka Roboyka nr /014 115

Nauka Tab. 4. Względna prędkość obliczeń w funkcji liczby wąków Tab. 4. Relaive compuaion speed as a funcion of he number of hreads Liczba wąków Względna prędkość obliczeń (1 wąek = 100 %) dla poszczególnych kompuerów [%] 1 3 4 5 6 1 100,0 100,0 100,0 100,0 100,0 100,0 188,1 186,4 198,9 197,9 199, 193,8 3 70,9 90,3 94,8 51,1 93, 174,7 4 97,7 384,3 379,3 35,7 383,5 194,5 5 319,5 56,5 46,8 60,0 450,4 168,8 6 375,8 79,0 71,6 87,3 55,3 185, 7 390, 336,0 317,8 86, 494,6 186,5 8 397,0 370,1 370, 31,6 498,1 19,0 9 34,8 308,1 77,6 84,1 563,0 186,5 10 356,1 338,3 98,8 300, 567,6 190,3 11 37,8 339,4 31,9 93,9 557,1 185, 1 386,9 345,3 355,7 30,9 591,3 188,3 13 390, 313,9 73,5 301,4 510,1 188,3 Zesaw esowy nr 1 i o kompuer wyposażony w procesor AMD FX-830 akowany częsoliwością 4, GHz. Procesor en składa się z czerech modułów, z kórych każdy zawiera dwie jednoski wykonawcze, widziane przez sysem operacyjny jako niezależne rdzenie. Jeden rdzeń może obsługiwać jeden wąek. Każdy moduł zawiera jedną jednoskę zmiennoprzecinkową, współużykowaną przez oba rdzenie. Procesor en można przełączyć w ryb pracy, w kórym każdy modułów pracuje jako pojedynczy rdzeń, co eoreycznie powinno przyspieszyć obliczenia wykonywane przy niewielkiej liczbie wąków. Zesaw nr 3 zawiera procesor Inel I5-500K pracujący z częsoliwością 3,3 GHz. Ma on czery rdzenie, z kórych każdy obsługuje jeden wąek. Zesaw nr 4 zawiera procesor Inel i3. Procesor en ma dwa rdzenie, z kórych każdy może obsłużyć dwa wąki. Podczas esów kompuer pracował z częsoliwością 3,8 GHz. Kompuer nr 5 o najszybsza z jednosek zasosowanych do esowania badanego algorymu. Jego procesor, Inel i7-970 ma sześć rdzeni, z kórych każdy obsługuje dwa wąki. Osani z kompuerów esowych nr 6, o maszyna z procesorem AMD Ahlon 64x, z dwoma rdzeniami i obsługującym dwa wąki. Zmierzone zosały czasy obliczeń dla różnej liczby wąków: od 1 do 16 oraz dla 0, 4, 8 i 3 wąków. Wyniki zosały przedsawione w ab. 3 i 4 oraz na rys. 1 i. Minimalny czas obliczeń dla każdego z zesawów zosał oznaczony żółym kolorem. Pomiary czasów pracy badanego algorymu były dokonywane w środowisku MS Windows. Jego procedury sysemowe, wykonując się w le, zajmują czas procesora, a co za ym idzie, wydłużają czas obliczeń. Wpływ ego zjawiska na wyniki pomiarów był isony, różnice między dwoma uruchomieniami ego samego programu na ym samym kompuerze sięgały kilku procen. W celu zminimalizowania wynikających sąd błędów pomiaru, procedura była uruchamiana 5 razy dla każdego zesawu i każdej liczby wąków, a zmierzone czasy zosały uśrednione. 14 40, 338,3 308,5 306, 51,4 19,7 15 405,8 341,7 39,9 313,7 573,7 187,7 16 399,6 345,3 356,3 319,6 560,1 188,7 0 387,7 345,9 35,6 318,3 631,9 191,4 4 416,8 345,9 35,6 317,6 659,5 189,3 8 404,9 344,7 349,5 318,9 633,8 188,0 3 417,8 343,5 355,1 318,3 635,7 187, Rys. 1. Czasy obliczeń w funkcji liczby wąków Fig. 1. Compuaion ime as a funcion of he number of hreads 116

Rys.. Względna prędkość obliczeń w funkcji liczby wąków Fig.. Relaive compuaion speed as a funcion of he number of hreads Na rys. 1 i można zauważyć charakerysyczne ząbki. Wynikają one ze spadków prędkości obliczeń, kórych przyczyną jes nierównomierny rozdział pracy na poszczególne wąki. W przypadku wykonywania pięciu wąków na czerordzeniowym procesorze (najbardziej zauważalne spowolnienie) jeden z rdzeni musiał wykonać szeregowo dwa wąki, mając do wykonania dwukronie większą liczbę operacji. 5. Podsumowanie Opracowany wielowąkowy algorym esymacji paramerów składowych sinusoidalnych złożonego sygnału odznacza się dobrą skalowalnością. Czas przeznaczony na wykonanie procedur, kóre nie mogą zosać zrównoleglone, jes niewielki, a czas związany z przełączaniem danych pomijalnie mały. W ej syuacji wydaje się być celowym opracowanie wersji ego algorymu przysosowanej do pracy w środowiskach o większej liczbie jednosek wykonawczych, akich jak procesory GPU, a akże opracowanie jego sprzęowej implemenacji w układzie FPGA. Rozwiązania e, dzięki przyspieszeniu obliczeń, pozwolą być może na zasosowanie ego rodzaju algorymu do rozwiązywania problemów prakycznych, akich jak wykrywanie anomalii i redukcja zakłóceń zawarych w sygnałach akusycznych. Podziękowania Publikację sfinansowano w ramach pracy własnej W/WE/8/013. Bibliografia 1. Zieliński T.P., Cyfrowe przewarzanie sygnałów, Wydawnicwa Komunikacji i Łączności, Warszawa 005.. Romberg J., Wakin M., Compressed Sensing: A Tuorial, IEEE Saisical Signal Processing Workshop, Madison, Wisconsin 007. 3. Donoho D.L., Compressed Sensing, IEEE Transacions On Informaion Theory, Vol. 5, No. 4, April 006, 189 1306. 4. Hong S., Direc Specrum Sensing from Compressed Measuremens, Miliary Communicaions Conference, 010, 1187 119. 5. Arabas J., Wykłady z algorymów ewolucyjnych, Wydawnicwa Naukowo-Techniczne, Warszawa 001. 6. Goldberg D.E., Algorymy geneyczne i ich zasosowania, Wydawnicwa Naukowo-Techniczne, Warszawa 003. 7. Rukowska D., Piliński M., Rukowski L., Sieci neuronowe, algorymy geneyczne i sysemy rozmye, PWN, Warszawa, Łódź 1999. 8. Munshi A., Gaser B., Mason T.G., OpenCL Programming Guide, Addison Wesley Pub Co. Inc., 011. 9. Majewski J., Zbysiński P., Układy FPGA w przykładach, Wydawnicwo BTC, Warszawa 007. 10. Kardasz P., Rekonsrukcja zaszumionego sygnału sinusoidalnego na podsawie niewielkiej liczby próbek za pomocą algorymu ewolucyjnego. Pomiary Auomayka Roboyka, R. 17, nr /013, 407 41. 11. Kardasz P., Algorym idenyfikacji składowych sinusoidalnych złożonego sygnału na podsawie jego losowo pobranych próbek. Poznan Universiy of Technology Academic Journals. Elecrical Engineering, nr 76, 013, 197 03. Parallel signal processing algorihm based on a small number of samples Absrac: The paper presens a parallel algorihm for parameer esimaion of sinusoidal componens of a complex signal. The proposed algorihm can idenify he signal componens when he number of available samples of he signal is limied. The proposed algorihm was esed on es compuers equipped wih differen number of processor cores and floaing poin unis. The experimenal resuls show ha he proposed algorihm can work efficienly even if he number of hreads exceeds he number of processor cores. Direcions for furher research are oulined. Keywords: parallel algorihm, signal idenificaion Arykuł recenzowany, nadesłany 18.11.013 r., przyjęy do druku 0.1.013 r. mgr inż. Pior Kardasz Dokoran Wydziału Elekrycznego Poliechniki Białosockiej. Zajmuje się badaniami związanymi z ineligennymi algorymami kompresji, rekonsrukcji i przewarzania sygnałów. e-mail: pik@we.pb.edu.pl Pomiary Auomayka Roboyka nr /014 117