{"id":67574,"date":"2018-03-09T22:55:59","date_gmt":"2018-03-09T22:55:59","guid":{"rendered":"https:\/\/www.deberes.net\/tesis\/sin-categoria\/self-tuned-parallel-runtimes-a-case-of-study-for-openmp\/"},"modified":"2018-03-09T22:55:59","modified_gmt":"2018-03-09T22:55:59","slug":"self-tuned-parallel-runtimes-a-case-of-study-for-openmp","status":"publish","type":"post","link":"https:\/\/www.deberes.net\/tesis\/tecnologia-de-los-ordenadores\/self-tuned-parallel-runtimes-a-case-of-study-for-openmp\/","title":{"rendered":"Self-tuned parallel runtimes: a case of study for openmp"},"content":{"rendered":"<h2>Tesis doctoral de <strong> Alejandro Dur\u00e1n Gonz\u00e1lez <\/strong><\/h2>\n<p>In recent years parallel computing has become ubiquitous. Lead by the spread of commodity multicore  processors, parallel programming is not anymore an obscure discipline only mastered by a few.  unfortunately, the amount of able parallel programmers has not increased at the same speed because is  not easy to write parallel codes. parallel programming is inherently different from sequential programming. Programmers must deal with a  whole new set of problems: identification of parallelism, work and data distribution, load balancing,  synchronization and communication. parallel programmers have embraced several languages designed to allow the creation of parallel  applications. In these languages, the programmer is not only responsible of identifying the parallelism but  also of specifying low-level details of how the parallelism needs to exploited (e.G. Scheduling, thread  distribution, &#8230;). This is a burden than hampers the productivity of the programmers. we demonstrate that is possible for the runtime component of a parallel environment to adapt itself to the  application and the execution environment and thus reducing the burden put into the programmer. For this  purpose we study three different parameters that are involved in the parallel exploitation of the openmp  parallel language: parallel loop scheduling, thread allocation in multiple levels of parallelism and task  granularity control. in all the cases, we propose a self-tuned algorithm that will first perform an on-line profiling of the  application and based on the information gathered it will adapt the value of the parameter to the one that  maximizes the performance of the application.  our goal is not to develop methods that outperform a hand-tuned application for a specific scenario, as  this is probably just as difficult as compiler code outperforming hand-tuned assembly code, but methods  that get close to that performance with a minimum effort from the programmer. In other words, what we  want to achieve with our self-tuned algorithms is to maximize the ratio performance over effort so the entry  level to the parallelism is lower. The evaluation of our algorithms with different applications shows that we  achieve that goal.<\/p>\n<p>&nbsp;<\/p>\n<h3>Datos acad\u00e9micos de la tesis doctoral \u00ab<strong>Self-tuned parallel runtimes: a case of study for openmp<\/strong>\u00ab<\/h3>\n<ul>\n<li><strong>T\u00edtulo de la tesis:<\/strong>\u00a0 Self-tuned parallel runtimes: a case of study for openmp <\/li>\n<li><strong>Autor:<\/strong>\u00a0 Alejandro Dur\u00e1n Gonz\u00e1lez <\/li>\n<li><strong>Universidad:<\/strong>\u00a0 Polit\u00e9cnica de catalunya<\/li>\n<li><strong>Fecha de lectura de la tesis:<\/strong>\u00a0 22\/10\/2008<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3>Direcci\u00f3n y tribunal<\/h3>\n<ul>\n<li><strong>Director de la tesis<\/strong>\n<ul>\n<li>Eduard Ayguad\u00e9 Parra<\/li>\n<\/ul>\n<\/li>\n<li><strong>Tribunal<\/strong>\n<ul>\n<li>Presidente del tribunal: \u00f3scar Plata gonz\u00e1lez <\/li>\n<li>Manuel Prieto matias (vocal)<\/li>\n<li>mark Bull (vocal)<\/li>\n<li>marin Litoiu (vocal)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tesis doctoral de Alejandro Dur\u00e1n Gonz\u00e1lez In recent years parallel computing has become ubiquitous. Lead by the spread of commodity [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"footnotes":""},"categories":[6474,15596,2535],"tags":[148601,15960,125069,148602,136440,21043],"class_list":["post-67574","post","type-post","status-publish","format-standard","hentry","category-lenguajes-de-programacion","category-politecnica-de-catalunya","category-tecnologia-de-los-ordenadores","tag-alejandro-duran-gonzalez","tag-eduard-ayguade-parra","tag-manuel-prieto-matias","tag-marin-litoiu","tag-mark-bull","tag-oscar-plata-gonzalez"],"_links":{"self":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts\/67574","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/comments?post=67574"}],"version-history":[{"count":0,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts\/67574\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/media?parent=67574"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/categories?post=67574"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/tags?post=67574"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}