Kokkos swMATH ID: 20455 Software Authors: Trott, C. R.; Hoemmen, M.; Hammond, S. D.; Edwards, H. C.; Sandia Description: The KOKKOS package was developed primarily by Christian Trott (Sandia) with contributions of various styles by others, including Sikandar Mashayak (UIUC), Stan Moore (Sandia), and Ray Shan (Sandia). The underlying Kokkos library was written primarily by Carter Edwards, Christian Trott, and Dan Sunderland (all Sandia). The KOKKOS package contains versions of pair, fix, and atom styles that use data structures and macros provided by the Kokkos library, which is included with LAMMPS in lib/kokkos. The Kokkos library is part of Trilinos and can also be downloaded from Github. Kokkos is a templated C++ library that provides two key abstractions for an application like LAMMPS. First, it allows a single implementation of an application kernel (e.g. a pair style) to run efficiently on different kinds of hardware, such as a GPU, Intel Phi, or many-core CPU. The Kokkos library also provides data abstractions to adjust (at compile time) the memory layout of basic data structures like 2d and 3d arrays and allow the transparent utilization of special hardware load and store operations. Such data structures are used in LAMMPS to store atom coordinates or forces or neighbor lists. The layout is chosen to optimize performance on different platforms. Again this functionality is hidden from the developer, and does not affect how the kernel is coded. These abstractions are set at build time, when LAMMPS is compiled with the KOKKOS package installed. All Kokkos operations occur within the context of an individual MPI task running on a single node of the machine. The total number of MPI tasks used by LAMMPS (one or multiple per compute node) is set in the usual manner via the mpirun or mpiexec commands, and is independent of Kokkos. Kokkos currently provides support for 3 modes of execution (per MPI task). These are OpenMP (for many-core CPUs), Cuda (for NVIDIA GPUs), and OpenMP (for Intel Phi). Note that the KOKKOS package supports running on the Phi in native mode, not offload mode like the USER-INTEL package supports. You choose the mode at build time to produce an executable compatible with specific hardware. Homepage: https://cfwebprod.sandia.gov/cfdocs/CompResearch/templates/insert/software.cfm Source Code: https://github.com/kokkos/kokkos Related Software: Trilinos; GitHub; CUDA; MueLu; PETSc; deal.ii; Amesos2; Belos; RAJA; Tpetra; ADOL-C; OpenACC; FEniCS; TensorFlow; HDF; SUNDIALS; SparseMatrix; OCCA; CUSPARSE; PyTorch Cited in: 45 Documents all top 5 Cited by 180 Authors 5 Phipps, Eric T. 3 Cyr, Eric C. 3 D’Elia, Marta 3 Hu, Jonathan Joseph 3 Pawlowski, Roger P. 3 Roberts, Nathan V. 3 Sankaran, Ramanan 3 Turcksin, Bruno 2 Arndt, Daniel 2 Bangerth, Wolfgang 2 Boman, Erik G. 2 Diaz, Adrian 2 Edwards, H. Carter 2 Heister, Timo 2 Heltai, Luca 2 Hernández Pérez, Francisco E. 2 Im, Hong G. 2 Jaiswal, Shashank 2 Kronbichler, Martin 2 Lin, Paul T. 2 Maier, Matthias Sebastian 2 Mcgregor, Duncan A. O. 2 Pelteret, Jean-Paul 2 Phillips, Edward G. 2 Rajamanickam, Sivasankaran 1 Abbott, Stephen D. 1 Adelmann, Andreas 1 Ahmadi, Narges 1 Alleman, Coleman N. 1 Alsalti-Baldellou, Àdel A. 1 Álvarez-Farré, Xavier 1 Bauer, Martin 1 Bergbauer, Maximilian 1 Bernardin, John 1 Bettencourt, Matthew T. 1 Bhattacharjee, Amitava 1 Blonigan, Patrick J. 1 Bond, Stephen D. 1 Bosler, Peter A. 1 Bradley, Andrew M. 1 Brown, Dominic A. S. 1 Brufau, Pilar 1 Carson, Erin Claire 1 Cartalade, Alain 1 Cartwright, Keith L. 1 Chen, Boyang 1 Chen, Youping 1 Christlieb, Andrew J. 1 Colomer, Guillem 1 D’Ambrosio, Donato 1 Davydov, Denis 1 De Rango, Alessio 1 Desai, Swapnil 1 Diamond, Gerrett 1 Díaz-Ibarra, Oscar H. 1 Ebeida, Mohamed S. 1 Echeverribar, Isabel 1 Eibl, Sebastian 1 Feder, Marco 1 Fehling, Marc 1 Fernández-Pato, J. 1 Francois, Marianne M. 1 Frey, Matthias 1 Furnari, Luca 1 Garcia-Navarro, Pilar 1 Gergelits, Tomáš 1 Germaschewski, Kai 1 Ghate, Aditya S. 1 Ghosh, Supriyo 1 Gilbert, Michael S. 1 Giordano, Andrea 1 Glusa, Christian A. 1 Gomes, Jefferson L. M. A. 1 Gorobets, Andrey V. 1 Gu, Boyang 1 Guthrey, Pierson T. 1 Hallatschek, Klaus 1 Hartland, Tucker 1 Heaney, Claire E. 1 Heinlein, Alexander 1 Heinz, Johannes 1 Heisig, Marco 1 Herten, Andreas 1 Higgins, Andrew J. 1 Hoemmen, Mark 1 Hokkanen, Jaro 1 Hrywniak, Markus 1 Jansson, Niclas 1 Jarvis, Stephen A. 1 Jones, John P. 1 Karp, Martin 1 Kestener, Pierre 1 Kim, Kyungjoo 1 Kim, Yu Jeong 1 Kohl, Nils 1 Kolda, Tamara Gibson 1 Kollet, Stefan 1 Kolotinskii, Daniil 1 Kormann, Katharina 1 Köstler, Harald ...and 80 more Authors all top 5 Cited in 18 Serials 6 Journal of Computational Physics 5 Computer Methods in Applied Mechanics and Engineering 5 SIAM Journal on Scientific Computing 4 Computers and Fluids 4 Computer Physics Communications 3 Computers & Mathematics with Applications 2 ACM Transactions on Mathematical Software 2 Journal of Computational and Applied Mathematics 2 Journal of Scientific Computing 1 Numerical Algorithms 1 Numerical Linear Algebra with Applications 1 Analele Științifice ale Universității “Ovidius” Constanța. Seria: Matematică 1 Computational Geosciences 1 Optimization and Engineering 1 Computational Methods in Applied Mathematics 1 Journal of Numerical Mathematics 1 Communications in Computational Physics 1 SIAM/ASA Journal on Uncertainty Quantification all top 5 Cited in 16 Fields 36 Numerical analysis (65-XX) 19 Fluid mechanics (76-XX) 7 Partial differential equations (35-XX) 5 Computer science (68-XX) 5 Mechanics of deformable solids (74-XX) 4 Statistical mechanics, structure of matter (82-XX) 3 Probability theory and stochastic processes (60-XX) 2 Linear and multilinear algebra; matrix theory (15-XX) 2 Statistics (62-XX) 2 Optics, electromagnetic theory (78-XX) 2 Geophysics (86-XX) 1 Combinatorics (05-XX) 1 Ordinary differential equations (34-XX) 1 Classical thermodynamics, heat transfer (80-XX) 1 Biology and other natural sciences (92-XX) 1 Mathematics education (97-XX) Citations by Year