Bredd Första Sök (BFS) är en byggsten för grafalgoritmer och har nyligen använts för storskalig analys av information i en mängd olika tillämpningar, inklusive sociala nätverk, grafdatabaser och webbsökning. På grund av dess betydelse har ett antal olika parallella programmeringsmodeller och arkitekturer utnyttjats för att optimera BFS. Men på grund av de oregelbundna minnesåtkomstmönstren och de stora grafernas ostrukturerade karaktär är dess effektiva parallellisering en utmaning. Xeon Phi är en massivt parallell arkitektur tillgänglig som en off-the-shelf accelerator, som innehåller en kraftfull 512 bitars vektorenhet med optimerad spridning och samla funktioner. Med tanke på dess potentiella fördelar, arbete med graf traversering på denna arkitektur är ett aktivt forskningsområde. Vi presenterar en uppsättning experiment där vi utforskar arkitektoniska funktioner i Xeon Phi och hur man bäst kan utnyttja dem i en top-down BFS algoritm men teknikerna kan tillämpas på den nuvarande state-of-the-art hybrid, top-down plus bottom-up, algoritmer. Vi fokuserar på exploateringen av vektorenheten genom att utveckla en förbättrad högvectorized OpenMP parallellalgoritm, med hjälp av vektorinslag, och förstå användningen av data anpassning och förhämtning. Dessutom undersöker vi hur hyperthreading och trådaffinitet påverkar performance, ett ämne som framträder under forskning i litteraturen. Som ett resultat, vi uppnå vad vi tror är den snabbast publicerade top-down BFS algoritm på den version av Xeon Phi som används i våra experiment. Den vektoriserade BFS topdown källkod som presenteras i detta papper kan på begäran vara fri att använda programvara.
I den första studien presenterar de vektorisering av top-down BFS algoritm med hjälp av vektor inneboende funktioner, som överträffades av REF, som klargjorde effekten av prefetching, tråd affinitet och vektorenhet användningshastighet.
Breadth first search vectorization on the Intel Xeon Phi
{'venue': "CF '16", 'journal': None, 'mag_field_of_study': ['Computer Science']}