{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,31]],"date-time":"2025-10-31T23:14:11Z","timestamp":1761952451519,"version":"build-2065373602"},"reference-count":32,"publisher":"Wiley","issue":"3","license":[{"start":{"date-parts":[[2008,8,6]],"date-time":"2008-08-06T00:00:00Z","timestamp":1217980800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Concurrency and Computation"],"published-print":{"date-parts":[[2009,3,10]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Typical computational grid users target only a single cluster and have to estimate the runtime of their jobs. Job schedulers prefer short\u2010running jobs to maintain a high system utilization. If the user underestimates the runtime, premature termination causes computation loss; overestimation is penalized by long queue times. As a solution, we present an automatic reparallelization and migration of OpenMP applications. A reparallelization is dynamically computed for an OpenMP work distribution when the number of CPUs changes. The application can be migrated between clusters when an allocated time slice is exceeded. Migration is based on a coordinated, heterogeneous checkpointing algorithm. Both reparallelization and migration enable the user to freely use computing time at more than a single point of the grid. Our demo applications successfully adapt to the changed CPU setting and smoothly migrate between, for example, clusters in Erlangen, Germany, and Amsterdam, the Netherlands, that use different kinds and numbers of processors. Benchmarks show that reparallelization and migration impose average overheads of about 4 and 2%, respectively. Copyright \u00a9 2008 John Wiley &amp; Sons, Ltd.<\/jats:p>","DOI":"10.1002\/cpe.1356","type":"journal-article","created":{"date-parts":[[2008,8,6]],"date-time":"2008-08-06T12:37:14Z","timestamp":1218026234000},"page":"281-299","source":"Crossref","is-referenced-by-count":2,"title":["Reparallelization techniques for migrating OpenMP codes in computational grids"],"prefix":"10.1002","volume":"21","author":[{"given":"Michael","family":"Klemm","sequence":"first","affiliation":[]},{"given":"Matthias","family":"Bezold","sequence":"additional","affiliation":[]},{"given":"Stefan","family":"Gabriel","sequence":"additional","affiliation":[]},{"given":"Ronald","family":"Veldema","sequence":"additional","affiliation":[]},{"given":"Michael","family":"Philippsen","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2008,8,6]]},"reference":[{"doi-asserted-by":"publisher","key":"e_1_2_8_2_2","DOI":"10.1023\/A:1019044623636"},{"unstructured":"OpenMP Architecture Review Board. OpenMP Application Program Interface Version 2.5 May 2005.http:\/\/www.openmp.org[24 May2008].","key":"e_1_2_8_3_2"},{"doi-asserted-by":"crossref","unstructured":"VeldemaR HofmanRFH BhoedjangRAF BalHE.Runtime optimizations for a Java DSM implementation. 2001 Joint ACM\u2010ISCOPE Conference on Java Grande Palo Alto CA U.S.A. June 2001;153\u2013162.","key":"e_1_2_8_4_2","DOI":"10.1145\/376656.376842"},{"doi-asserted-by":"publisher","key":"e_1_2_8_5_2","DOI":"10.1002\/cpe.1178"},{"doi-asserted-by":"crossref","unstructured":"S\u00fc\u00dfM LeopoldC.Implementing irregular parallel algorithms with OpenMP. Proceedings of Euro\u2010Par Dresden Germany August 2006;635\u2013644.","key":"e_1_2_8_6_2","DOI":"10.1007\/11823285_66"},{"doi-asserted-by":"publisher","key":"e_1_2_8_7_2","DOI":"10.1016\/S0167-739X(97)00037-X"},{"doi-asserted-by":"publisher","key":"e_1_2_8_8_2","DOI":"10.1002\/spe.4380210802"},{"doi-asserted-by":"publisher","key":"e_1_2_8_9_2","DOI":"10.1177\/109434200101500402"},{"unstructured":"EllahiTN HudziaB McDermottL KechadiT.Transparent migration of multi\u2010threaded applications on a Java based Grid. Proceedings of the IASTED International Conference on Web Technologies Applications and Services Alberta Canada July 2006.","key":"e_1_2_8_10_2"},{"doi-asserted-by":"publisher","key":"e_1_2_8_11_2","DOI":"10.1002\/cpe.927"},{"doi-asserted-by":"crossref","unstructured":"\u1ebcl MaghraouiK DesellTJ SzymanskiBK VarelaCA.Dynamic malleability in iterative MPI applications. Proceedings of the 7th IEEE International Symposium on Cluster Computing and the Grid Rio de Janeiro Brazil May 2007;591\u2013598.","key":"e_1_2_8_12_2","DOI":"10.1109\/CCGRID.2007.45"},{"doi-asserted-by":"crossref","unstructured":"Kov\u00e1csJ KacsukP.Server based migration of parallel applications. Proceedings of the 4th Austrian\u2013Hungarian Workshop on Distributed and Parallel Systems Linz Austria 2002;30\u201337.","key":"e_1_2_8_13_2","DOI":"10.1007\/978-1-4615-1167-0_4"},{"doi-asserted-by":"crossref","unstructured":"FernandesR PingaliK StodghillP.Mobile MPI programs in computational Grids. Proceedings of the 11th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming New York NY U.S.A. March 2006;22\u201331.","key":"e_1_2_8_14_2","DOI":"10.1145\/1122971.1122977"},{"unstructured":"HuangC LawlorO KaleL.Adaptive MPI. Proceedings of the 16th International Workshop on Languages and Compilers for Parallel Computing College Station TX U.S.A. October 2003;306\u2013322.","key":"e_1_2_8_15_2"},{"doi-asserted-by":"publisher","key":"e_1_2_8_16_2","DOI":"10.1007\/BF02703630"},{"unstructured":"PlankJS BeckM KingsleyG LiK.Libckpt: Transparent checkpointing under Unix. Usenix Winter Technical Conference New Orleans LA U.S.A. January 1995;213\u2013223.","key":"e_1_2_8_17_2"},{"unstructured":"DuellJ HargroveP RomanE.The design and implementation of Berkeley Lab's linux checkpoint\/restart. Technical Report LBNL\u201054941 Lawrence Berkeley National Laboratory 2003.","key":"e_1_2_8_18_2"},{"doi-asserted-by":"crossref","unstructured":"RamkumarB StrumpenV.Portable checkpointing for heterogeneous architectures. Twenty\u2010seventh International Symposium on Fault\u2010Tolerant Computing\u2014Digest of Papers Seattle WA U.S.A. June 1997;58\u201367.","key":"e_1_2_8_19_2","DOI":"10.1109\/FTCS.1997.614078"},{"doi-asserted-by":"publisher","key":"e_1_2_8_20_2","DOI":"10.1177\/1094342005056139"},{"doi-asserted-by":"crossref","unstructured":"AgbariaA SandersWH.Application\u2010driven coordination\u2010free distributed checkpointing. Proceedings of the 25th IEEE International Conference on Distributed Computing Systems Columbus OH U.S.A. June 2005;177\u2013186.","key":"e_1_2_8_21_2","DOI":"10.1109\/ICDCS.2005.14"},{"doi-asserted-by":"crossref","unstructured":"NeogyS SinhaA DasPK.Distributed checkpointing using synchronized clocks. Proceedings of the 26th Annual International Computer Software and Applications Conference Oxford U.K. August 2002;199\u2013204.","key":"e_1_2_8_22_2","DOI":"10.1109\/CMPSAC.2002.1044553"},{"volume-title":"Compilers","year":"2007","author":"Aho AV","key":"e_1_2_8_23_2"},{"doi-asserted-by":"crossref","unstructured":"AggarwalG MotwaniR ZhuA.The load rebalancing problem. Proceedings of the 15th Annual ACM Symposium on Parallel Algorithms and Architectures San Diego CA U.S.A. June 2003;258\u2013265.","key":"e_1_2_8_24_2","DOI":"10.1145\/777412.777460"},{"doi-asserted-by":"crossref","unstructured":"DeckerJ SchneiderJ.Heuristic scheduling of Grid workflows supporting co\u2010allocation and advance reservation. Proceedings of the 7th IEEE International Symposium on Cluster Computing and the Grid Rio de Janeiro Brazil May 2007;335\u2013342.","key":"e_1_2_8_25_2","DOI":"10.1109\/CCGRID.2007.56"},{"doi-asserted-by":"crossref","unstructured":"JarvisSA SpoonerDP Lim Choi KeungHN DysonJRD ZhaoL NuddGR.Performance\u2010based middleware services for Grid computing. Proceedings of the 5th Annual International Workshop on Active Middleware Services Seattle WA U.S.A. June 2003;151\u2013159.","key":"e_1_2_8_26_2","DOI":"10.1109\/ACW.2003.1210215"},{"unstructured":"LiuH BeckM HuangJ.Dynamic co\u2010scheduling of distributed computation and replication. Proceedings of the 6th IEEE International Symposium on Cluster Computing and the Grid Singapore May 2006;592\u2013600.","key":"e_1_2_8_27_2"},{"doi-asserted-by":"crossref","unstructured":"VeldemaR PhilippsenM.Near overhead\u2010free heterogeneous thread\u2010migration. Proceedings of the IEEE International Conference on Cluster Computing Boston MA U.S.A. September 2005;145\u2013154.","key":"e_1_2_8_28_2","DOI":"10.1109\/CLUSTR.2005.347042"},{"unstructured":"http:\/\/java.sun.com\/j2se\/1.3\/docs\/guide\/serialization\/spec\/serialTOC.doc.html[24 May2008].","key":"e_1_2_8_29_2"},{"volume-title":"Design Patterns","year":"1995","author":"Gamma E","key":"e_1_2_8_30_2"},{"doi-asserted-by":"publisher","key":"e_1_2_8_31_2","DOI":"10.1007\/b72010"},{"doi-asserted-by":"crossref","unstructured":"SmithLA BullJM Obdrz\u02c6e\u00e1lekJ.A parallel Java Grande benchmark suite. Proceedings of the 2001 ACM\/IEEE Conference on Supercomputing Denver CO U.S.A. November 2001;97\u2013105.","key":"e_1_2_8_32_2","DOI":"10.1145\/582034.582042"},{"unstructured":"BullJ WestheadM KambitesM Obdr\u017e\u00e1lekJ.Towards OpenMP for Java. Proceedings of the 2nd European Workshop on OpenMP Edinburgh U.K. September 2000;98\u2013105.","key":"e_1_2_8_33_2"}],"container-title":["Concurrency and Computation: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fcpe.1356","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/cpe.1356","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,31]],"date-time":"2025-01-31T10:14:41Z","timestamp":1738318481000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/cpe.1356"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008,8,6]]},"references-count":32,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2009,3,10]]}},"alternative-id":["10.1002\/cpe.1356"],"URL":"https:\/\/doi.org\/10.1002\/cpe.1356","archive":["Portico"],"relation":{},"ISSN":["1532-0626","1532-0634"],"issn-type":[{"type":"print","value":"1532-0626"},{"type":"electronic","value":"1532-0634"}],"subject":[],"published":{"date-parts":[[2008,8,6]]}}}