Algoritmer med låg beräkningsintensitet visar intressant prestanda och strömförbrukning beteende på multicore processorer. Vi väljer lattice-Boltzmann-metoden (LBM) som prototyp för detta scenario för att visa om och hur enchipsprestanda och effektegenskaper kan generaliseras till det mycket parallella fallet. LBM är en algoritm för CFD-simuleringar som har blivit populära på grund av dess enkla genomförande och lämplighet för komplexa geometrier. I detta papper utför vi en grundlig analys av en sparse-lattice LBM implementation på Intel Sandy Bridge processorn. Med utgångspunkt från en enkärnig prestandamodell kan vi beskriva kodens mättnadsegenskaper inom chipet och dess optimala driftpunkt när det gäller energi till lösning som en funktion av förökningsmetoden, klockfrekvensen och SIMD-vektoriseringen. Vi visar sedan hur dessa resultat kan extrapoleras till den massiva parallella nivån på en petascale-klass maskin, och kvantifiera energibesparingspotentialen hos olika optimeringar. Vi finner att hög enkärnig prestanda och ett korrekt val av antalet kärnor som används på chipet är de viktigaste faktorerna för lägsta energi till lösning med minimal förlust av prestanda. I det mycket parallella fallet anses dessa riktlinjer vara ännu viktigare för att fastställa den optimala driftspunkten för prestanda och energi, särskilt när man tar hänsyn till systemets baseffektförbrukning och den MPI-kommunikationens egenskaper. Förenklade åtgärder som ofta tillämpas av användare och datorcentra, såsom att ställa in en låg klockfrekvens för minnesbundna program, har begränsad effekt.
Baserat på analysen på Intel Sandy Bridge processorer, Wittmann et al. REF extrapolerar energieffektiviteten för en Lattice-Boltzmann CFD-simulering till en maskin av petascale-klass.
An analysis of energy-optimized lattice-Boltzmann CFD simulations from the chip to the highly parallel level
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}