{"id":866,"date":"2018-01-01T10:38:56","date_gmt":"2018-01-01T12:38:56","guid":{"rendered":"https:\/\/webhomserverphp82.asav.org.br\/softwarelab\/?p=866"},"modified":"2019-09-05T11:37:18","modified_gmt":"2019-09-05T14:37:18","slug":"migpf-towards-on-self-organizing-process-rescheduling-of-bulk-synchronous-parallel-applications","status":"publish","type":"post","link":"https:\/\/unisinos.br\/softwarelab\/pt\/migpf-towards-on-self-organizing-process-rescheduling-of-bulk-synchronous-parallel-applications\/","title":{"rendered":"MigPF: Towards on self-organizing process rescheduling of Bulk-Synchronous Parallel applications"},"content":{"rendered":"<p>Migration is a known technique to offer process rescheduling, being especially pertinent for Bulk Synchronous Parallel\u00a0(BSP) programs. Such programs are organized in a set of supersteps, in which the slowest process always determines the synchronization time. This approach motivated us to develop a first model called MigBSP, which combines computation, communication, and migration costs metrics for process rescheduling decisions. In this paper, a new model named MigPF enhances our previous work in three aspects: (i)\u00a0a different algorithm for detecting imbalance situations, which considers the performance of each processor, including its enclosed processes, instead of individual times of each process; (ii)\u00a0an improvement on the rescheduling reactivity through shortening the interval for the next migration call when imbalance situations arise; (iii)\u00a0a new algorithm for self-organizing the migratable processes and their destinations. Particularly, this third item represents our main scientific contribution, not only in terms of the MigBSP context, but also in a broader one that covers the entire BSP landscape. The algorithm assembles <span id=\"MathJax-Element-1-Frame\" class=\"MathJax_SVG\" tabindex=\"0\" role=\"presentation\" data-mathml=\"&lt;math xmlns=&quot;http:\/\/www.w3.org\/1998\/Math\/MathML&quot;&gt;&lt;mi is=&quot;true&quot;&gt;n&lt;\/mi&gt;&lt;\/math&gt;\"><\/span> possible rescheduling plans (where <em>n<\/em> <span id=\"MathJax-Element-2-Frame\" class=\"MathJax_SVG\" tabindex=\"0\" role=\"presentation\" data-mathml=\"&lt;math xmlns=&quot;http:\/\/www.w3.org\/1998\/Math\/MathML&quot;&gt;&lt;mi is=&quot;true&quot;&gt;n&lt;\/mi&gt;&lt;\/math&gt;\"><\/span> is the number of processes) and provides a prediction function (<em>pf<\/em><span id=\"MathJax-Element-3-Frame\" class=\"MathJax_SVG\" tabindex=\"0\" role=\"presentation\" data-mathml=\"&lt;math xmlns=&quot;http:\/\/www.w3.org\/1998\/Math\/MathML&quot;&gt;&lt;mi is=&quot;true&quot;&gt;p&lt;\/mi&gt;&lt;mi is=&quot;true&quot;&gt;f&lt;\/mi&gt;&lt;\/math&gt;\"><\/span>) that chooses the most profitable rescheduling plan when compared to the current mapping. We developed a MigPF prototype with the Adaptive MPI\u00a0(AMPI) library, which offers a standard framework for implementing migration-based load balancing policies. We tested this prototype against other built-in AMPI rescheduling policies with two scientific applications: shear sorting and fractal image compression. The results revealed performance gains up to 41% and an overhead limited to 5% when migrations do not take place.<\/p>\n<p><a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S0167739X16301145\">Future Generation Computer Systems<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Migration is a known technique to offer process rescheduling, being especially pertinent for Bulk Synchronous Parallel\u00a0(BSP) programs. Such programs are organized in a set of supersteps, in which the slowest process always determines the synchronization time. This approach motivated us to develop a first model called MigBSP, which combines computation, communication, and migration costs metrics [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":192,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,46,27,14,54,25,44],"tags":[],"class_list":["post-866","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cristiano-andre-da-costa","category-publicacoes-vinicius-facco-rodrigues","category-publicacoes-rodrigo-da-rosa-righi","category-publicacoes-cristiano-andre-da-costa","category-publicacoes-2","category-rodrigo-da-rosa-righi","category-vinicius-facco-rodrigues"],"_links":{"self":[{"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/posts\/866","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/comments?post=866"}],"version-history":[{"count":1,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/posts\/866\/revisions"}],"predecessor-version":[{"id":867,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/posts\/866\/revisions\/867"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/media\/192"}],"wp:attachment":[{"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/media?parent=866"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/categories?post=866"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unisinos.br\/softwarelab\/wp-json\/wp\/v2\/tags?post=866"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}