Informacja

Drogi użytkowniku, aplikacja do prawidłowego działania wymaga obsługi JavaScript. Proszę włącz obsługę JavaScript w Twojej przeglądarce.

Wyszukujesz frazę "Dependency analysis" wg kryterium: Temat


Wyświetlanie 1-5 z 5
Tytuł:
A conversion of "while" and "do-while" loops to allow dependency analysis by existing tools
Konwersja pętli "while" i "do-while" w celu analizy zależności przez istniejące narzędzia
Autorzy:
Poliwoda, M.
Błaszyński, P.
Powiązania:
https://bibliotekanauki.pl/articles/153582.pdf
Data publikacji:
2010
Wydawca:
Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Tematy:
kompilator
konwersja pętli
analiza zależności
compiler
loop conversion
dependency analysis
Opis:
In this paper there are presented methods for conversion of "while" and "do-while" loops to the form of "for" loops. The aim of this conversion is to allow dependence analysis by many existing tools. The dependence analysis allows determining which parts of the analyzed program code must be executed sequentially, and which can be executed independently. Such an analysis is used to reduce the use of resources in embedded systems. Automating the analysis also allows specifying types of classes of algorithms and their implementation which can be the subject of optimization. The nature of optimization can also be determined.
Większość narzędzi analizujących zależności "LooPo", "Clan" i "Petit" posiada możliwość analizy pętli typu for, w których wykonuje się operacje na tablicach za pomocą operatorów indeksowania. W chwili obecnej pętle while są analizowane przez analizator "LooPo". Analizatory zależności "clan" i "petit" analizują jedynie pętle for. Zasadną więc jest koncepcja konwersji konstrukcji typu "while", "do-while" do postaci pętli "for", gdyż po wykonaniu konwersji możliwe staje się użycie dowolnego narzędzia do analizy zależności. Użycie różnych narzędzi do analizy zależności daje możliwość uzyskania wyników analizy w postaci odpowiedniej dla zaimplementowanych algorytmów zrównoleglających, co pozwala na uzyskanie większego zbioru propozycji zrównoleglenia kodu pętli. Wykonanie konwersji umożliwi również zastosowanie szeroko implementowanego popularnego standardu OpenMP w celu podziału przestrzeni iteracji między niezależne wątki. Docelowa postać pętli spełnia wymagania dotyczące pętli for przedstawione w specyfikacji OpenMP v3.0. Zastosowanie zgodności z tym standardem umożliwia analizę zależności w pętli przez większość analizatorów pętli w języku C i zapisanie zrównoleglonej postaci pętli zgodnie ze standardem. Algorytm opisany w tym artykule jest zrealizowany kompilatorze "Stepson", który jest aktualnie rozwijany. Informacje o skompilowanym programie są przechowywane w postaci drzewa. Opisany algorytm pozwala zwiększyć liczbę pętli, które można automatycznie analizować.
Źródło:
Pomiary Automatyka Kontrola; 2010, R. 56, nr 12, 12; 1501-1503
0032-4140
Pojawia się w:
Pomiary Automatyka Kontrola
Dostawca treści:
Biblioteka Nauki
Artykuł
Tytuł:
Automatyczna ekstrakcja zależności i transformacje pętli w języku C do przekształceń optymalizujących w systemach osadzonych
Automatic extraction of dependencies and loop transformations in C language for optimising transformations in embedded systems
Autorzy:
Błaszyński, P.
Poliwoda, M.
Powiązania:
https://bibliotekanauki.pl/articles/154621.pdf
Data publikacji:
2010
Wydawca:
Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Tematy:
kompilator
systemy osadzone
analiza zależności
compiler
embedded systems
dependency analysis
Opis:
W poniższym artykule zaprezentowano metody wyszukiwania pętli programowych i zależności między ich iteracjami. Analiza zależności pozwala na określenie, które fragmenty analizowanego kodu programu mogą zostać wykonane niezależnie. Przedstawiono analizę programów w ANSI C, ze wskazaniem możliwości wykorzystania wyników analizy do zmniejszenia użycia zasobów w systemach osadzonych. Zautomatyzowanie analizy pozwala określić klasy algorytmów i ich implementacje, które mogą być optymalizowane, oraz charakter tych optymalizacji.
In the paper there are presented methods of searching for program loops and dependencies between iteration of these loops. Analysis of the dependencies allows determining which parts of the analysed code of the program must be executed sequentially, and which can be executed independently. There are given the results of the analysis of simple algorithms written in ANSI C language, indicating the possibility of using the analysis to reduce the use of resources in embedded systems. Automating the analysis process also allows specifying the types of algorithm classes and their implementation, which can be subjected to optimisation, as well as the nature of these optimisations. In the introduction there is discussed the range of topics dealt with in the paper. In the second paragraph the method for determining the dependencies between instructions is described. Fig. 2 shows the iteration space of the sample loop. The third paragraph presents the basic techniques of loop transformation, which are possible due to the dependency analysis between iterations. The above (and others obtained during the tests) results show the possibilities of allowing the code designer to improve devices and embedded systems. Transformation selection algorithms need different types of dependence description as an input data. The aim of the project described in the paper, which is devoted to the dependency analysis is to provide a variety of the dependency collection description.
Źródło:
Pomiary Automatyka Kontrola; 2010, R. 56, nr 7, 7; 708-710
0032-4140
Pojawia się w:
Pomiary Automatyka Kontrola
Dostawca treści:
Biblioteka Nauki
Artykuł
Tytuł:
Reprezentacja przestrzeni iteracji pętli i opisu zależności w kompilatorze zrównoleglającym
Representation of iteration domain and description of dependencies in a parallelizing compiler
Autorzy:
Błaszyński, P.
Poliwoda, M.
Powiązania:
https://bibliotekanauki.pl/articles/155248.pdf
Data publikacji:
2011
Wydawca:
Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Tematy:
kompilator
systemy osadzone
analiza zależności
compiler
embedded system
dependency analysis
Opis:
W artykule został przedstawiony proces optymalizacji kodu programów przeznaczonych do wykonania przez systemy osadzone lub wieloprocesorowe przy pomocy kompilatora optymalizującego. Głównym elementem, dla którego wykonywane są optymalizacje, są pętle, ponieważ to w nich wykonywane jest najwięcej instrukcji a ich optymalizacja ma wpływa na wykorzystanie dostępnych zasobów, co wpływa znacząco na ilość zużywanej przez układy energii. Zaprezentowana została również budowa kompilatora i istotne informacje przechowywane i wykorzystywane do analizy w trakcie kompilacji.
A process of optimization of the program code to be performed by embedded or multiprocessor systems is very complex and time consuming. The code fragments whose optimization brings the greatest effects are loops because they process a large amount of data using the same instructions repeatedly. This makes the execu-tion time of a loop a significant part of the overall program execution time. The time of each iteration affects use of available resources (memory, cache, etc.), which also influences the amount of energy. The program code is subjected to numerous transformations carried out on the basis of analysis of the relationships. This analysis allows determining which pieces of the code can be executed independently of each other. The aim of this paper is to present conversion mechanisms implemented in a paralellizing compiler. These mechanisms are focused on the representation format and description of the loop dependencies. The analysis of dependences allows the submission of many transitions and provides a more optimized version of the code when taking into account such factors as the energy aware code or the execution time.
Źródło:
Pomiary Automatyka Kontrola; 2011, R. 57, nr 8, 8; 957-959
0032-4140
Pojawia się w:
Pomiary Automatyka Kontrola
Dostawca treści:
Biblioteka Nauki
Artykuł
Tytuł:
Parallelization of the ARIA Encryption Standard
Zrównoleglenie standardu szyfrowania ARIA
Autorzy:
Burak, D.
Powiązania:
https://bibliotekanauki.pl/articles/157465.pdf
Data publikacji:
2012
Wydawca:
Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Tematy:
standard szyfrowania ARIA
zrównoleglenie
analiza zależności danych
OpenMP
ARIA encryption standard
parallelization
data dependency analysis
Opis:
In this paper there are presented the results of ARIA encryption standard parallelizing . The data dependence analysis of loops was applied in order to parallelize this algorithm. The OpenMP standard is chosen for presenting the algorithm parallelism. There is shown that the standard can be divided into parallelizable and unparallelizable parts. As a result of the study, it was stated that the most time-consuming loops of the algorithm are suitable for parallelization. The efficiency measurement for a parallel program is presented.
W artykule zaprezentowano proces zrównoleglenia koreańskiego standardu szyfrowania ARIA. Przeprowadzono analizę zależności danych w pętlach programowych celem redukcji zależności danych blokujących możliwości zrównoleglenia algorytmu. Standard OpenMP w wersji 3.0 został wybrany celem prezentacji równoległości najbardziej czasochłonnych obliczeniowo pętli odpowiedzialnych za procesy szyfrowania oraz deszyfrowania danych w postaci bloków danych. Pokazano, że zrównoleglona wersja algorytmu składa się z części sekwenycjnej zawierającej instrukcje wejścia/wyjścia oraz równoległej, przy czym najbardziej czasochłonne pętle programowe zostały efektywnie zrównoleglone. Dołączono wyniki pomiarów przyspieszenia pracy zrównoleglonego standardu szyfrowania oraz procesów szyfrowania oraz deszyfrowania danych z wykorzystaniem dwóch, czterech, ośmiu, szesnastu oraz trzydziestu dwóch wątków oraz zastosowaniem ośmioprocesorowego serwera opartego na czterordzeniowych procesorach Quad Core Intel Xeon.
Źródło:
Pomiary Automatyka Kontrola; 2012, R. 58, nr 2, 2; 222-225
0032-4140
Pojawia się w:
Pomiary Automatyka Kontrola
Dostawca treści:
Biblioteka Nauki
Artykuł
Tytuł:
Parallelization of the Camellia Encryption Algorithm
Zrównoleglenie algorytmu szyfrowania Camellia
Autorzy:
Burak, D.
Błaszyński, P.
Powiązania:
https://bibliotekanauki.pl/articles/156064.pdf
Data publikacji:
2009
Wydawca:
Stowarzyszenie Inżynierów i Techników Mechaników Polskich
Tematy:
algorytm szyfrowania Camellia
zrównoleglenie
analiza zależności danych
OpenMP
Camellia encryption algorithm
parallelization
data dependency analysis
Opis:
A parallelization process of the Camellia encryption algorithm along with the description of exploited parallelization tools is presented. The data dependency analysis of loops and the loop transformations were applied in order to parallelize the sequential algorithm. The OpenMP standard was chosen for representing parallelism of the cipher. Speed-up measurements for a parallel program are presented.
W artykule przedstawiono proces zrównoleglenia japońskiego standardu szyfrowania danych - blokowego algorytmu szyfrowania Camellia, bazującego na sieci Feistela, pracującego w trybie pracy ECB. Krótko opisano wykorzystane do tego celu narzędzia programowe: program Petit, który służy do analizy istniejących zależności danych w pętlach programowych oraz OpenMP API. W celu zrównoleglenia algorytmu sekwencyjnego zastosowano analizę zależności danych oraz dokonano przekształceń pętli programowych w celu wyeliminowania istniejących zależności pętli blokujących proces ich zrównoleglenia. Do prezentacji równoległości szyfru wybrano język C oraz standard OpenMP. Załączono również wyniki pomiarów przyspieszenia pracy programu równoległego oraz najbardziej czasochłonnych pętli, które są odpowiedzialne za proces szyfrowania oraz deszyfrowania danych dla dwóch, czterech, ośmiu oraz szesnastu procesorów oraz dla dwóch, czterech, ośmiu oraz szesnastu wątków utworzonych z zastosowaniem kompilatora IntelŽ C++ w wersji.11.0 zawierającego OpenMP API w wersji 3.0. Najbardziej czasochłonne pętle zostały w pełni zrównoleglone, natomiast przyspieszenie pracy całego programu, zgodnie z prawem Amdahla jest zredukowane z uwagi na występowanie w kodzie programu części sekwencyjnej, zawierającej sekwencyjne operacje wejścia- wyjścia służące do odczytu danych z pliku, oraz zapisu danych do pliku. Wyniki zrównoleglenia opisane w artykule mogą być pomocne do implementacji sprzętowych algorytmu Camellia.
Źródło:
Pomiary Automatyka Kontrola; 2009, R. 55, nr 10, 10; 820-822
0032-4140
Pojawia się w:
Pomiary Automatyka Kontrola
Dostawca treści:
Biblioteka Nauki
Artykuł
    Wyświetlanie 1-5 z 5

    Ta witryna wykorzystuje pliki cookies do przechowywania informacji na Twoim komputerze. Pliki cookies stosujemy w celu świadczenia usług na najwyższym poziomie, w tym w sposób dostosowany do indywidualnych potrzeb. Korzystanie z witryny bez zmiany ustawień dotyczących cookies oznacza, że będą one zamieszczane w Twoim komputerze. W każdym momencie możesz dokonać zmiany ustawień dotyczących cookies