Den Kernel Polynomial Method (KPM) är ett väletablerat system i kvantfysik och kvantkemi för att bestämma eigen value densitet och spektral egenskaper hos stora glesa matriser. I detta arbete visar vi den höga optimeringspotentialen och genomförbarheten av petaska heterogena CPU-GPU-implementationer av KPM. På nodnivå visar vi att det är möjligt att koppla loss det glesa matrisproblem som KPM utgör från huvudminnesbandbredden både på CPU och GPU. För att lindra effekterna av spridda data åtkomst kombinerar vi löst kopplade yttre iterationer med tätt kopplade block glesa matris flera vektor operationer, vilket möjliggör ren data streaming. Alla optimeringar styrs av en prestandaanalys och modelleringsprocess som visar hur de beräkningsmässiga flaskhalsarna förändras med varje optimeringssteg. Slutligen använder vi den optimerade nodnivå KPM med ett hybridparallellramverk för att utföra storskaliga heterogena elektroniska strukturberäkningar för nya topologiska material på ett petascale-klass Cray XC30-system.
Detta ökar ytterligare beräkningsintensiteten och driver motsvarande gles matris-multiple-vektor multiplikation (SpMMV) mot regelbunden dataåtkomst REF.
Performance Engineering of the Kernel Polynomial Method on Large-Scale CPU-GPU Systems
{'venue': 'Proceedings of the 2015 IEEE International Parallel and Distributed Processing Symposium (IPDPS) 417-426', 'journal': None, 'mag_field_of_study': ['Computer Science', 'Physics']}