000012386 001__ 12386
000012386 005__ 20160816141442.0
000012386 04107 $$aeng
000012386 046__ $$k2016-05-09
000012386 100__ $$aBošanský, M.
000012386 24500 $$aON PARALLELIZATION OF ASSEMLY OPERATIONS IN FINITE ELEMENT SOFTWARE

000012386 24630 $$n22.$$pEngineering Mechanics 2016
000012386 260__ $$bInstitute of Thermomechanics AS CR, v.v.i., Praha
000012386 506__ $$arestricted
000012386 520__ $$2eng$$aCurrent development in computer hardware brings in new opportunities in numerical modelling. Computers with a single processing unit, where only one instruction can be processed at any moment in time, allow us to run simulation codes only sequentially. The performance of single processing units is reaching the physical limits, given by transmission delays and heat build-up on the silicon chips. The future of scientific computing seems to be in parallel computing, that allows to overcome the limitations of traditional sequential processing units. Parallel computing is based on simultaneous use of multiple processing units. The fundamental paradigm in parallel computing is based on work decomposition into pieces of work that can be processed simultaneously. This contribution focuses on parallelization of sparse matrix and global vector assembly operations, which are typical to any finite element code. The aim of presented work is to propose an alternative approach to assembly operation based on decomposition of the work into independent element groups, members of which can be processed concurrently without blocking operation. The individual groups contain elements contributing to distinct entries in sparse matrix or global vector. Such decomposition is done using colouring algorithm. As the elements in group contribute to distinct locations, there is no need to prevent the race condition, that can occur when the same location is updated simultaneously. It is only necessary to enforce synchronization before processing each element group. Efficiency of implemented approach is compared to approach based on decomposition of assembly loop using OpenMP and POSIX threads directives and explicit locking of updated locations in sparse matrix or global vector, which was published by the authors in (Bosansky & Patzak, 2016a) and (Bosansky & Patzak, 2016b).

000012386 540__ $$aText je chráněný podle autorského zákona č. 121/2000 Sb.
000012386 653__ $$aFinite element method, shared memory, colouring algorithm.

000012386 7112_ $$aEngineering Mechanics 2016$$cSvratka, CZ$$d2016-05-09 / 2016-05-12$$gEM2016
000012386 720__ $$aBošanský, M.$$iPatzák, B.
000012386 8560_ $$ffischerc@itam.cas.cz
000012386 8564_ $$s1122330$$uhttps://invenio.itam.cas.cz/record/12386/files/016cd_o_sol.pdf$$yOriginal version of the author's contribution as presented on CD, id 016, section SOL.
000012386 962__ $$r12369
000012386 980__ $$aPAPER