Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników

Znaleziono wyników: 7

Liczba wyników na stronie
first rewind previous Strona / 1 next fast forward last
Wyniki wyszukiwania
help Sortuj według:

help Ogranicz wyniki do:
first rewind previous Strona / 1 next fast forward last
EN
If market repeatability is assumed, it is possible with some real probability to deduct short term market changes by making some calculations. The algorithm, based on logical and statistically reasonable scheme to make decisions about opening or closing position on a market, is called an automated strategy. Due to market volatility, all parameters are changing from time to time, so there is need to constantly optimize them. This article describes a team organization process when researching market strategies. Individual team members are merged into small groups, according to their responsibilities. The team members perform data processing tasks through a cascade organization, providing solutions to speed up work related to the use of remote computing resources. They also work out how to store results in a suitable way, according to the type of task, and facilitate the publication of a large amount of results.
EN
In this work, the possibility of assessing traditional investment strategy based on the pivot points for using with other than the commonly used criterion is examined. The authors attempted to apply the Matthews Correlation Coefficient (further reffered as MCC) criterion based on a confusion matrix when assessing the strategy to include more factors than the traditional criteria (such as profit, profit vs. Risk, Sharpe ratio, Calmar ratio) and to express these factors by one number. The criterion based on a confusion matrix is, in authors beliefs, unique in this application and gives a fairly valuable estimation of trading strategy. An example of several strategies tested on EURUSD 1h time series in selected intervals in the years 2012-2013 is considered. Among these strategies there is a simple strategy based on the concept of pivot points levels and more complex derivative strategies, based on the vector of optimized values of certain parameters. These strategies are evaluated using both traditional criteria and modification of MCC proposed by the authors.
PL
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.
EN
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.
PL
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.
EN
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.
EN
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.
PL
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ć.
6
Content available Parallelization of the Camellia Encryption Algorithm
EN
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.
PL
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.
PL
W artykule przedstawiona jest propozycja algorytmów kompilacji i modelu kompilatora pozwalającego na zmniejszanie zużycia energii. Problemy związane ze zbyt dużym zużyciem energii stają się coraz bardziej istotne, szczególnie w systemach osadzonych, głównie w urządzeniach przenośnych. Ze względu na fakt, że jednym z największych odbiorców energii w takim systemie jest pamięć, w poniższym artykule są zaprezentowane zagadnienia dotyczące oszczędności energii podczas korzystania z pamięci. Omawiany kompilator jest przeznaczony do kompilacji programów dedykowanych przede wszystkim dla systemów osadzonych, ale również dla innych typów urządzeń, głównie takich, które funkcjonują dzięki zasilaniu bateryjnemu.
EN
This paper presents a proposition of compilation algorithms and a model of compilation that allows to minimize memory energy consumption. Problems connected with excessive energy consumption are becoming increasingly important, especially in embedded systems and mobile devices. Because of the fact that the memory is one of the biggest energy consumer in such systems, this article presents energy-saving problems connected with memory access. Described compiler is designed for compilation of programs dedicated especially for embedded systems, but also for other types of devices, mainly battery-powered.
first rewind previous Strona / 1 next fast forward last
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.