Abstrakt. Vi undersöker det olösta problemet med att automatiskt och effektivt upptäcka funktionellt irrelevanta hinder i MPI-program. En funktionellt irrelevant barriär är en uppsättning MPI_Barrier samtal, en per MPI process, så att deras avlägsnande inte ändrar den övergripande MPI kommunikationsstrukturen i programmet. Statiska analysmetoder är oförmögna att lösa detta problem, eftersom MPI-program kan beräkna många mängder på runtime, inklusive skicka mål, ta emot källor, taggar och kommunikatörer, och kan också ha databeroende kontrollflöden. Vi erbjuder en algoritm som heter Fib för att lösa detta problem baserat på dynamisk (runtime) analys. Fib gäller för MPI-program som använder 24 allmänt använda tvåsidiga MPI-operationer. Vi visar att det är tillräckligt att upptäcka barriärsamtal vars avlägsnande orsakar ett jokertecken får uttalande placeras före eller efter en barriär för att nu börja matcha ett skicka uttalande som det inte matchade tidigare. Fib avgör om en barriär blir relevant vid eventuell interleaving av MPI-processerna i ett givet MPI-program. Eftersom antalet interleavings kan växa exponentiellt med antalet processer, Fib använder en sund metod för att drastiskt minska detta antal, genom att beräkna endast relevanta interleavings. Vi visar att många MPI-program inte har databeroende kontrollflöden, vilket gör resultaten av Fib tillämpliga på alla indata som programmet kan acceptera.
Sharma m.fl. REF beskriver en dynamisk programanalys för att upptäcka funktionellt irrelevanta hinder i MPI-program.
A Formal Approach to Detect Functionally Irrelevant Barriers in MPI Programs ⋆
{'venue': 'PVM/MPI', 'journal': None, 'mag_field_of_study': ['Computer Science']}