Identyfikatory
Warianty tytułu
Models for estimating the time of program loop execution in parallel on a CPU and with the use of OpenCL computation on a GPU
Języki publikacji
Abstrakty
W artykule autorzy przedstawiają modele szacowania czasów wykonywania się pętli programowych zgodnych z modelem FAN nieposiadającym zależności lub posiadającym zależności, ale tylko w ciele pętli, które wykonywane mogą być przez centralne jednostki obliczeniowe CPU jak i multiprocesory strumieniowe zwane rdzeniami kart graficznych GPU. Zaprezentowane w niniejszym artykule modele szacowania czasów wykonywania tych pętli pozwolą na określanie tego, czy obliczenia w zastanym środowisku obliczeniowym warto wykonywać z użyciem posiadanego procesora CPU czy korzystniejsze będzie wykorzystanie do obliczeń posiadanej, często nowoczesnej, karty graficznej z wydajną jednostką GPU i bardzo szybką pamięcią stosowaną we współczesnych kartach graficznych. Wraz z zaprezentowanymi modelami przedstawiono także testy potwierdzające poprawność opracowanych modeli szacowania czasu. Celem powstania tych modeli jest dostarczenie metod przyspieszania działania aplikacji realizujących różne zadania, w tym zadania transportowe, takie jak przyspieszone przeszukiwanie rozwiązań, przeszukiwanie ścieżek w grafach, czy przyspieszanie algorytmów przetwarzania obrazów w systemach wizyjnych pojazdów autonomicznych i semiautonomicznych, przy czym modele te pozwalają na zbudowanie systemu automatycznego rozdzielania zadań pomiędzy CPU i GPU przy zmienności zasobów obliczeniowych.
The authors present models for estimating the time of execution of program loops compliant with the FAN model with no data dependencies or with data dependencies only within the body programming loop, which can be executed either by CPUs or by stream multiprocessors referred to as GPU cores. The models presented will make it possible to determine whether it would be more efficient to execute computation in the existing environment using the CPU (Central Processing Unit) or a state-of-the-art graphics card with a high-performance GPU (Graphics Processing Unit) and super-fast memory, often implemented in modern graphics cards. Validity checks confirming the developed time estimation model for GPU are presented. The purpose of these models is to provide methods for accelerating the performance of applications performing various tasks, including transport tasks, such as accelerated solution searching, searching paths in graphs, or accelerating image processing algorithms in vision systems of autonomous and semiautonomous vehicles, where these models allow to build an automatic task distribution system between the CPU and the GPU with the variability of computing resources.
Rocznik
Tom
Strony
802--807
Opis fizyczny
Bibliogr. 14 poz., schem., wykr.
Twórcy
autor
- Akademia Morska w Szczecinie, Wydział Nawigacyjny, Instytut Technologii Morskich
autor
- Akademia Morska w Szczecinie, Wydział Nawigacyjny, Instytut Technologii Morskich
Bibliografia
- 1. Burmeister H.-C., Bruhn W., Rødseth Ø., Porathe T., Autonomous Unmanned Merchant Vessel and its Contribution towards the e-Navigation Implementation: The MUNIN Perspective, International Journal of e-Navigation and Maritime Economy, Volume 1, December 2014, pp. 1-13
- 2. J. Koszelew, P. Wolejsza and D. Oldziej, "Autonomous Vessel with an Air Look," 2018 Baltic Geodetic Congress (BGC Geomatics), Olsztyn, 2018, pp. 102-106
- 3. Sanders J., Kandrot E., CUDAby Example: An Introduction to General-Purpose GPU Programming, Addison-Wesley, 2011
- 4. Rauber T., Runger G., Parallel Programming for multicore and cluster systems, Springer-Verlag 2012
- 5. Wolf F., Freitag F., Mohr B., Moore S., Wylie B., Large Event Traces in Parallel Performance Analysis, ARCS Workshops, 2006
- 6. Gebali F., Algorithms and Parallel Computing, Wiley, 2011
- 7. Lewis T., Foundations of Parallel Programming: A Machine-Independent Approach. IEEE Computer Society Press, 1992
- 8. Wróbel M. (2015) Models for Estimating the Execution Time of Software Loops in Parallel and Distributed Systems. In: Zamojski W., Mazurkiewicz J., Sugier J., Walkowiak T., Kacprzyk J. (eds) Theory and Engineering of Complex Systems and Dependability. DepCoS-RELCOMEX 2015. Advances in Intelligent Systems and Computing, vol 365. Springer, Cham
- 9. Nozdrzykowski Ł., Nozdrzykowska M. (2018) Testing the Significance of Parameters of Models Estimating Execution Time of Parallel Program Loops According to the Open MPI Standard. In: Zamojski W., Mazurkiewicz J., Sugier J., Walkowiak T., Kacprzyk J. (eds) Advances in Dependability Engineering of Complex Systems. DepCoS-RELCOMEX 2017. Advances in Intelligent Systems and Computing, vol 582. Springer, Cham
- 10. Cegielski M. (2016) Parallel computation of transient processes on OpenCL framework, Przegląd Elektrotechniczny, ISSN 0033-2097, R. 92 NR 7/201
- 11. Thouti K., Sathe S. R,(2013) A Methodology for Translating C Programs to OpenCL, International Journal of Computer Applications (0975–8887) Volume 82 – No3, November 2013
- 12. Sawerwain M., OpenCL Akceleracja GPU w praktyce, PWN, 2014
- 13. Farber R, Cuda Application Design and Development, Morgan Kaufmann, 2012
- 14. Nvidia’s opencl best practices guide. Dostęp online: https://hpc.oit.uci.edu/nvidia-doc/sdk-cuda-doc/OpenCL/doc/OpenCL_Best_Practices_Guide.pdf, 2011
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-19d3c637-a8b3-40ba-b73f-1e46915a2d1b