PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

Programming synchronization-free parallelism using Intel Threading Building Blocks

Treść / Zawartość
Identyfikatory
Warianty tytułu
PL
Programowanie równoległości wolnej od synchronizacji przy użyciu Intel TBB
Języki publikacji
EN
Abstrakty
EN
Extracting synchronization-free parallelism by means of the Iteration Space Slicing Framework results in parallel pseudo-code that is independent on a parallel computer architecture and API/library, hence it cannot be directly compiled. For producing parallel programs for shared memory multiprocessors, Threading Building Blocks (TBB) can be applied that is a library supporting scalable parallel programming based on the standard C++ language. In this paper, we present how to benefit from TBB in practice on the basis of pseudo-code representing synchronization-free slices produced by a tool using the Omega Library. Results of experiments with the NAS benchmarks suite are presented.
PL
Zastosowanie techniki opartej na ekstrakcji równoległości pozbawionej synchronizacji w pętlach programowych pozwala na wygenerowanie pseudokodu, który jest niezależny od architektury komputera oraz języka lub biblioteki programowania. Taki kod nie może być wprost kompilowany. Jest wymagane przekształcenie takiego pseudokodu na rzeczywisty kod równoległy. W tym celu może być zastosowane narzędzie Intel Threading Building Blocks, które jest biblioteką wspierająca skalowalne programowanie równoległe w standardzie C++. Nie wymaga specjalnego języka programowania i specjalnych kompilatorów. Zaletą biblioteki Threading Building Blocks jest możliwość uruchomienia w dowolnym środowisku programowo-sprzętowym i systemie operacyjnym. W artykule przedstawiono korzyści wynikające z tworzenia aplikacji równoległych za pomocą TBB. Wyjaśniono sposób poszukiwania instancji instrukcji fragmentów kodu przy użyciu biblioteki Omega i tworzenie najpierw równoległego pseudo-kodu, a dalej transformacja pseudokodu na kod równoległy z wykorzystaniem TBB. Proponowane podejście zostało zweryfikowane za pomocą zbioru pętli testowych z benchmarku NAS. Zbadano przyspieszenie i efektywność kodu równoległego oraz skalowalność w aspekcie do zmiennego rozmiaru obliczeń badanych pętli.
Wydawca
Rocznik
Strony
1380--1383
Opis fizyczny
Bibliogr. 11 poz., tab.
Twórcy
autor
autor
  • Faculty of Computer Science, West Pomeranian University of Technology, ul. Żołnierska 49, 71-210 Szczecin, wbielecki@wi.zut.edu.pl
Bibliografia
  • [1] Beletska A., Bielecki W., Cohen A., Palkowski M., Siedlecki K.: Coarse-grained loop parallelization: Iteration space slicing vs affine transformations. Parallel Computing, 37, s. 479-497, 2011.
  • [2] Reinders J.: Intel Threading Building Blocks, Outfitting C++ for Multi-core Processor Parallelism, Print ISBN:978-0-596-51480-8, O’Reilly Media, 2007.
  • [3] Intel Threading Building Blocks - Tutorial, Document Number 319872-006US, www.intel.com, 2011.
  • [4] Pugh W. and Wonnacott D.: An exact method for analysis of value-based array data dependences. In In Sixth Annual Workshop on Programming Languages and Compilers for Parallel Computing. Springer-Verlag, 1993.
  • [5] Kelly W., Maslov V., Pugh W., Rosser E., Shpeisman T. and Wonnacott D.: The omega library interface guide. Technical report, USA, 1995.
  • [6] Bielecki W., Palkowski M.: Using message passing for developing coarse-grained applications in openmp. In: J. Cordeiro, B. Shishkov, A. Ranchordas and M. Helfert, Editors, ICSOFT (PL/DPS/KE), INSTICC Press (2008), pp. 145-152.
  • [7] OpenMP API, www.openmp.org.
  • [8] Bielecki W., Beletska A., Palkowski M. and San Pietro P.: Finding synchronization-free parallelism represented with trees of dependent operations. In ICA3PP, volume 5022 of LNCS, pp. 185-195. Springer, 2008.
  • [9] NAS benchmark suite. http://www.nas.nasa.gov.
  • [10] The Message Passing Interface (MPI) standard, http://www.mcs.anl.gov/ research/projects/mpi/.
  • [11] Pugh W. and Rosser E.: Iteration space slicing and its application to communication optimization. In International Conference on Supercomputing, pp. 221-228, 1997.
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-article-BSW4-0107-0028
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ć.