The Tersoff many-body potential: Sustainable performance through vectorization

Σχετικά έγγραφα
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Εκτεταμένη περίληψη Περίληψη

ΤΕΧΝΙΚΕΣ ΑΠΟΔΟΤΙΚΗΣ ΧΡΗΣΗΣ ΤΟΥ ΕΘΝΙΚΟΥ ΥΠΕΡΥΠΟΛΟΓΙΣΤΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ARIS Αθήνα, 17 Δεκεµβρίου2015 Ιωάννης Λιαµπότης iliaboti at grnet.

GPGPU. Grover. On Large Scale Simulation of Grover s Algorithm by Using GPGPU

Buried Markov Model Pairwise

Thesis presentation. Turo Brunou

ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΠΕΡΙΒΑΛΛΟΝΤΟΣ

«ΑΓΡΟΤΟΥΡΙΣΜΟΣ ΚΑΙ ΤΟΠΙΚΗ ΑΝΑΠΤΥΞΗ: Ο ΡΟΛΟΣ ΤΩΝ ΝΕΩΝ ΤΕΧΝΟΛΟΓΙΩΝ ΣΤΗΝ ΠΡΟΩΘΗΣΗ ΤΩΝ ΓΥΝΑΙΚΕΙΩΝ ΣΥΝΕΤΑΙΡΙΣΜΩΝ»

Solutions to the Schrodinger equation atomic orbitals. Ψ 1 s Ψ 2 s Ψ 2 px Ψ 2 py Ψ 2 pz

FX10 SIMD SIMD. [3] Dekker [4] IEEE754. a.lo. (SpMV Sparse matrix and vector product) IEEE754 IEEE754 [5] Double-Double Knuth FMA FMA FX10 FMA SIMD

High order interpolation function for surface contact problem

Variational Wavefunction for the Helium Atom

Capacitors - Capacitance, Charge and Potential Difference

[1] P Q. Fig. 3.1

ΙΕΥΘΥΝΤΗΣ: Καθηγητής Γ. ΧΡΥΣΟΛΟΥΡΗΣ Ι ΑΚΤΟΡΙΚΗ ΙΑΤΡΙΒΗ

ΕΘΝΙΚΗ ΥΟΛΗ ΔΗΜΟΙΑ ΔΙΟΙΚΗΗ ΙH ΕΚΠΑΙΔΕΤΣΙΚΗ ΕΙΡΑ ΤΜΗΜΑ ΚΟΙΝΩΝΙΚΗΣ ΔΙΟΙΚΗΣΗΣ ΔΙΟΙΚΗΣΗ ΜΟΝΑΔΩΝ ΥΓΕΙΑΣ ΤΕΛΙΚΗ ΕΡΓΑΣΙΑ

Κατανοώντας και στηρίζοντας τα παιδιά που πενθούν στο σχολικό πλαίσιο

HIV HIV HIV HIV AIDS 3 :.1 /-,**1 +332

Quantifying the Financial Benefits of Chemical Inventory Management Using CISPro

Potential Dividers. 46 minutes. 46 marks. Page 1 of 11

GPU. CUDA GPU GeForce GTX 580 GPU 2.67GHz Intel Core 2 Duo CPU E7300 CUDA. Parallelizing the Number Partitioning Problem for GPUs

ΤΙΤΛΟΣ ΠΤΥΧΙΑΚΗΣ «H ΠΙΛΟΤΙΚΗ ΕΦΑΡΜΟΓΗ ΣΥΣΤΗΜΑΤΟΣ CATERING ΣE ΚΕΝΤΡΟ ΚΑΤΑΤΑΞΗΣ ΣΤΗΝ ΚΥΠΡΟ»

Τ.Ε.Ι. ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΜΗΜΑ ΔΗΜΟΣΙΩΝ ΣΧΕΣΕΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΣ

Reading Order Detection for Text Layout Excluded by Image

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006

Test Data Management in Practice

An experimental and theoretical study of the gas phase kinetics of atomic chlorine reactions with CH 3 NH 2, (CH 3 ) 2 NH, and (CH 3 ) 3 N

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

Quick algorithm f or computing core attribute

Supplementary Materials for. Kinetic and Computational Studies on Pd(I) Dimer- Mediated Halogen Exchange of Aryl Iodides

ER-Tree (Extended R*-Tree)

Efficient Implementation of Sparse Linear Algebra Operations on InfiniBand Cluster. Akira Nishida,

Ventilated Distribution Transformers

From the finite to the transfinite: Λµ-terms and streams

Bayesian modeling of inseparable space-time variation in disease risk

The Simply Typed Lambda Calculus

Όλνκα πνπδάζηξηαο: Γξεγνξία αββίδνπ Α.Δ.Μ:7859. Δπηβιέπνλ Καζεγεηήο: Παζραιίδεο Αζαλάζηνο ΑΝΩΣΑΣΟ ΣΔΥΝΟΛΟΓΗΚΟ ΔΚΠΑΗΓΔΤΣΗΚΟ ΗΓΡΤΜΑ ΚΑΒΑΛΑ

(1) Describe the process by which mercury atoms become excited in a fluorescent tube (3)

Μεταπτυχιακή διατριβή. Ανδρέας Παπαευσταθίου

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΙΚΗΣ ΙΣΧΥΟΣ

Wavelet based matrix compression for boundary integral equations on complex geometries

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. «Προστασία ηλεκτροδίων γείωσης από τη διάβρωση»

ΑΝΑΠΤΥΞΗ ΣΕΝΑΡΙΩΝ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΚΑΙ ΤΗΣ ΥΔΡΟΗΛΕΚΤΡΙΚΗΣ ΠΑΡΑΓΩΓΗΣ ΤΟΥ ΥΔΡΟΣΥΣΤΗΜΑΤΟΣ ΤΟΥ ΠΟΤΑΜΟΥ ΝΕΣΤΟΥ

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΟΔΟΝΤΙΑΤΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΟΔΟΝΤΙΚΗΣ ΚΑΙ ΑΝΩΤΕΡΑΣ ΠΡΟΣΘΕΤΙΚΗΣ

Vol. 31,No JOURNAL OF CHINA UNIVERSITY OF SCIENCE AND TECHNOLOGY Feb

Assalamu `alaikum wr. wb.

: Monte Carlo EM 313, Louis (1982) EM, EM Newton-Raphson, /. EM, 2 Monte Carlo EM Newton-Raphson, Monte Carlo EM, Monte Carlo EM, /. 3, Monte Carlo EM

Block Ciphers Modes. Ramki Thurimella

A browser-based digital signing solution over the web

2 Composition. Invertible Mappings

ΑΠΟΔΟΤΙΚΗ ΑΠΟΤΙΜΗΣΗ ΕΡΩΤΗΣΕΩΝ OLAP Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙΔΙΚΕΥΣΗΣ. Υποβάλλεται στην

Σχετικά με την CBS εκ. Κύκλος εργασιών. Partners. 165 εργαζόμενοι. Μηχανικοί. Developers. Sales & Consultants. 34 Συνεργασίες.

ΚΑΘΟΡΙΣΜΟΣ ΠΑΡΑΓΟΝΤΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΠΑΡΑΓΟΜΕΝΗ ΙΣΧΥ ΣΕ Φ/Β ΠΑΡΚΟ 80KWp

Η Διδακτική Ενότητα «Γνωρίζω τον Υπολογιστή», στα πλαίσια των Προγραμμάτων Σπουδών της Πληροφορικής: μια Μελέτη Περίπτωσης.

ΓΗΠΛΧΜΑΣΗΚΖ ΔΡΓΑΗΑ ΑΡΥΗΣΔΚΣΟΝΗΚΖ ΣΧΝ ΓΔΦΤΡΧΝ ΑΠΟ ΑΠΟΦΖ ΜΟΡΦΟΛΟΓΗΑ ΚΑΗ ΑΗΘΖΣΗΚΖ

Fractional Colorings and Zykov Products of graphs

ΟΙΚΟΝΟΜΟΤΕΧΝΙΚΗ ΑΝΑΛΥΣΗ ΕΝΟΣ ΕΝΕΡΓΕΙΑΚΑ ΑΥΤΟΝΟΜΟΥ ΝΗΣΙΟΥ ΜΕ Α.Π.Ε

ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

TMA4115 Matematikk 3

ΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ "VIDEO ΚΑΤΟΠΙΝ ΖΗΤΗΣΗΣ" ΑΝΝΑ ΜΟΣΧΑ Μ 11 / 99

GPU DD Double-Double 3 4 BLAS Basic Linear Algebra Subprograms [3] 2

ΑΓΓΛΙΚΑ Ι. Ενότητα 7α: Impact of the Internet on Economic Education. Ζωή Κανταρίδου Τμήμα Εφαρμοσμένης Πληροφορικής

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems

DESKTOP - Intel processor reference chart

ΘΕΜΑΤΙΚΗ ΕΥΡΕΤΗΡΙΑΣΗ ΚΑΙ ΚΑΘΙΕΡΩΣΗ ΟΡΟΛΟΓΙΑΣ ΣΤΙΣ ΤΕΧΝΙΚΕΣ ΒΙΒΛΙΟΘΗΚΕΣ: Η ΕΜΠΕΙΡΙΑ ΣΤΟ ΤΕΕ

Electronic structure and spectroscopy of HBr and HBr +

Econ 2110: Fall 2008 Suggested Solutions to Problem Set 8 questions or comments to Dan Fetter 1

Bring Your Own Device (BYOD) Legal Challenges of the new Business Trend MINA ZOULOVITS LAWYER, PARNTER FILOTHEIDIS & PARTNERS LAW FIRM

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

6.003: Signals and Systems. Modulation

ΕΠΙΧΕΙΡΗΣΙΑΚΗ EΡΕΥΝΑ & ΔΙΟΙΚΗΤΙΚΗ ΕΠΙΣΤΗΜΗ OPERATIONS RESEARCH & MANAGEMENT SCIENCE

ΓΕΩΜΕΣΡΙΚΗ ΣΕΚΜΗΡΙΩΗ ΣΟΤ ΙΕΡΟΤ ΝΑΟΤ ΣΟΤ ΣΙΜΙΟΤ ΣΑΤΡΟΤ ΣΟ ΠΕΛΕΝΔΡΙ ΣΗ ΚΤΠΡΟΤ ΜΕ ΕΦΑΡΜΟΓΗ ΑΤΣΟΜΑΣΟΠΟΙΗΜΕΝΟΤ ΤΣΗΜΑΣΟ ΨΗΦΙΑΚΗ ΦΩΣΟΓΡΑΜΜΕΣΡΙΑ

Εισαγωγή. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων

Συστήµατα Παράλληλης Επεξεργασίας

Introduction to Theory of. Elasticity. Kengo Nakajima Summer

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

PRESENTATION TITLE PRESENTATION SUBTITLE

ECON 381 SC ASSIGNMENT 2

Αναερόβια Φυσική Κατάσταση

Business4Climate Επιχειρώ για το Κλίμα

Proforma C. Flood-CBA#2 Training Seminars. Περίπτωση Μελέτης Ποταμός Έ βρος, Κοινότητα Λαβάρων

Εικονική Αναπαράσταση Νοηµατικής Γλώσσας στο ιαδίκτυο

2.1

ΕΘΝΙΚΗ ΣΧΟΛΗ ΗΜΟΣΙΑΣ ΙΟΙΚΗΣΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ»

ΣΠΟΥΔΑΣΤΡΙΑ : ΕΙΣΗΓΗΤΗΣ: Δρ. Στέφανος Γκούμας. Πτυχιακή Εργασία. Υβριδικά Συστήματα τταραγωγής Ηλεκτρικής Ενέργειας. Ευδοκία Πέλλη ΑΕΜ 1871

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών. Εισαγωγή. Συστήματα Παράλληλης Επεξεργασίας 9 ο Εξάμηνο

Engineering Tunable Single and Dual Optical. Emission from Ru(II)-Polypyridyl Complexes. Through Excited State Design

Ζητήματα Τυποποίησης στην Ορολογία - ο ρόλος και οι δράσεις της Επιτροπής Ορολογίας ΤΕ21 του ΕΛΟΤ

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

ΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΗ ΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ. ιπλωµατική Εργασία. της ΘΕΟ ΟΣΟΠΟΥΛΟΥ ΕΛΕΝΗΣ ΜΣ:5411

Study of In-vehicle Sound Field Creation by Simultaneous Equation Method

Retrieval of Seismic Data Recorded on Open-reel-type Magnetic Tapes (MT) by Using Existing Devices

ΠΑΝΔΠΙΣΗΜΙΟ ΜΑΚΔΓΟΝΙΑ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΙΑΚΧΝ ΠΟΤΓΧΝ ΣΜΗΜΑΣΟ ΔΦΑΡΜΟΜΔΝΗ ΠΛΗΡΟΦΟΡΙΚΗ

ΠΑΝΔΠΗΣΖΜΗΟ ΠΑΣΡΩΝ ΣΜΖΜΑ ΖΛΔΚΣΡΟΛΟΓΩΝ ΜΖΥΑΝΗΚΩΝ ΚΑΗ ΣΔΥΝΟΛΟΓΗΑ ΤΠΟΛΟΓΗΣΩΝ ΣΟΜΔΑ ΤΣΖΜΑΣΩΝ ΖΛΔΚΣΡΗΚΖ ΔΝΔΡΓΔΗΑ

Calculating the propagation delay of coaxial cable

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Transcript:

The Tersoff many-body potential: Sustainable performance through vectorization Markus Höhnerbach Ahmed E. Ismail Paolo Bientinesi High Performance and Automatic Computing Group Aachen Institute for Advanced Study in Computational Engineering Science RWTH Aachen University Supercomputing 2015 Producing High Performance and Sustainable Software for Molecular Simulation 1 / 15

Vectorization Basically mandatory on the Xeon Phi Ubiquitous: Gromacs (intrinsics), NAMD (intrinsics), LAMMPS (USER-INTEL, pragma based approach) Typically pair potentials and neighbor list build Gains in complex cases? Tersoff potential: Widely used, fairly simple ( 700 LOC) Previous work for GPU: EAM a, Stillinger-Weber b and Tersoff c a b c Brown et al, An Evaluation of Molecular Dynamics Performance on the Hybrid Cray XK6 Supercomputer, Procedia Computer Science, 2012. Brown at al, Implementing molecular dynamics on hybrid high performance computers Three-body potentials, Computer Physics Communications, 2013. Hou et al, Efficient GPU-accelerated molecular dynamics simulation of solid covalent crystals, Computer Physics Communications, 2013. 2 / 15

The Tersoff potential V = i V (i,j,ζ ij ) {}}{ f C (r ij ) [f R (r ij ) + b ij f A (r ij )] (1) j:r ij <r C b ij = (1 + β η ζ η ij ) 1 2η (2) ζ ij = f C (r ik )g(θ ijk ) exp(λ 3 (r ij r ik )) }{{} k:r ik <r C ζ(i,j,k) (3) Terms in V and b ij depend on the type of i and j Terms in ζ ij depend on the type of i, j and k 3 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ); F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) 4 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ); F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) 4 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ); F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) 4 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ); F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) 4 / 15

Challenges Few neighbors Fewer interactions Model Problem Stress in Carbon Nanotubes a For single core measurements: Scaled down 100x and simplified Figure: Graphene a Thanks to Marcus Schmidt 5 / 15

Vectorization J algorithm for... do for... do... ; for... do... ;... ; for... do... ; I algorithm for... do for... do... ; for... do... ;... ; for... do... ; 6 / 15

Implementation About LAMMPS Already Xeon Phi support via USER-INTEL package Usage model: Offloading First attempt: Double precision intrinsics Would it not be nice to have different precisions? Would it not be nice to support different instruction sets? Is this sustainable? 7 / 15

Abstraction typedef vector_routines<double, double, AVX> v; typedef v::fvec fvec; fvec a(1); fvec b(2); fvec c = v::recip(a + b); Features Supports single, double and mixed precision Supports scalar, SSE, AVX, AVX2, IMCI, AVX-512, array notation (Cilk) Advantages Maintainability Testing (through AN) Portability Thin wrapper 8 / 15

Effect of Vectorization Experiment: Xeon Phi 5110P I algorithm Sequential Native Timings (in seconds) Speedup Precision LAMMPS I-Scalar I-Vec double 88.72 58.04 14.18 single 45.59 8.56 LAMMPS I-Scalar LAMMPS I-Vec I-Scalar I-Vec Precision double 1.53 6.26 4.09 single 1.95 10.36 5.32 9 / 15

Effect of Vectorization Experiment: Xeon E5-2680 v3 Sequential Haswell Double precision Timings (in seconds) & Speedups Arch. I J LAMMPS I LAMMPS J LAMMPS 28.23 1 Scalar 18.63 14.7 1.52 1.91 SSE 37.15 21.3 0.76 1.32 AVX 23.92 12.5 1.18 2.25 AVX2 16.59 10.9 1.70 2.59 10 / 15

Full System Comparison Experiment Arch. Model Year Cores Haswell 2x Xeon E5-2680 v3 2014 24 Sandy Bridge 2x Xeon E5-2450 2012 16 Phi 1x Xeon Phi 5110P 2012 8 29 Offload via Sandy Bridge Timings (in seconds) System double single LAMMPS 395.89 Sandy Bridge Vec 250.02 229.65 Phi Vec 170.88 125.14 LAMMPS 182.43 Haswell Vec 136.99 103.16 KNL Vec?? 11 / 15

Outlook and conclusion Complicated potentials benefit from vectorization Hiding behind abstraction works Unification? There s VCL, Vc, UME, various math libraries What about accuracy? Integration into LAMMPS/USER-INTEL Continue work on Xeon Phi and LAMMPS OpenMP 4.1 AVX-512 12 / 15

Dicussion & Questions The Group hpac.rwth-aachen.de The IPCC hpac.rwth-aachen.de/ipcc The Code github.com/v0i0/lammps-tersoff-vector E-Mail hoehnerbach@aices.rwth-aachen.de 13 / 15

Backup 14 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm Transformation for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm Transformation for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0; ζ ij ζ ij + ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm Transformation for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0, F ij i 0, F ij j 0, F ij k 0; ζ ij ζ ij + ζ(i, j, k) ; F ij i F ij j F ij i + xi ζ(i, j, k); F ij j + xj ζ(i, j, k); F ij k F ij k + x k ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζ xi ζ(i, j, k); F j F j δζ xj ζ(i, j, k); F k F k δζ xk ζ(i, j, k) ; 15 / 15

The Tersoff Algorithm Transformation for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0, F ij i 0, F ij j 0, F ij k 0; ζ ij ζ ij + ζ(i, j, k) ; F ij i F ij j F ij i F ij j + xi ζ(i, j, k); + xj ζ(i, j, k); F ij k F ij k + x k ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; F i F i xi V (i, j, ζ ij ); F j F j xj V (i, j, ζ ij ); δζ ζ V (i, j, ζ ij ); F i F i δζf ij i ; F j F j δζf ij j ; F k F k δζ F ij k ; 15 / 15

The Tersoff Algorithm Transformation for i in local atoms of the current thread do for j in atoms neighboring i do ζ ij 0, F ij i 0, F ij j 0, F ij k 0; ζ ij ζ ij + ζ(i, j, k) ; F ij i F ij j F ij i + xi ζ(i, j, k); F ij j + xj ζ(i, j, k); F ij k F ij k + x k ζ(i, j, k) ; E E + V (i, j, ζ ij ) ; δζ ζ V (i, j, ζ ij ); F i F i xi V (i, j, ζ ij ) δζ F ij i ; F j F j xj V (i, j, ζ ij ) δζ F ij j ; F k F k δζ F ij k ; 15 / 15