Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
D DKS
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Code Review
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Uldis Locans
  • DKS
  • Wiki
    • Dks modules
  • dksopal

Last edited by Uldis Locans Aug 21, 2017
Page history

dksopal

DKSOPAL module

DKS OPAL module provides CUDA and OpenMP implementations for algorithms that allow OPAL to offload FFT Poisson solver and particle matter interaction simulations. Using DKSBase module OPAL can schedule memory management and data transfers to the devices and using the OPAL module schedule the kernel execution on the device. For the FFT Poisson solver gather and scatter data transfers are used with the GPU to allow multiple CPU cores to share one GPU.

For the FFT Poisson solver DKS contains a FFT module, that allows to perform the Fast Fourier transformations on the accelerator. For GPU devices DKS uses cuFFT library provides by Nvidia, while for Intel MIC DKS uses Intels MKL library. Additionally FFT Poisson solver requires calculation of Greens function and element by element multiplication of arrays. DKS contains optimized CUDA and OpenMP implementations of these algorithms.

In order to perform Monte Carlo simulations for particle matter interaction, DKS contains CUDA and OpenMP codes for energy loss and Coulomb scattering calculations. For random numbers DKS uses Nvidias cuRand library and Intels MKL VSL library. In addition DKS provides function to move dead particles to the end of the array, this is done by a loop on the Intel MIC and using Thrust library to sort the array on the GPU.

Full list of DKSOPAL module functions are available in in DKS documentation. The full description of DKSMusrfit module and its interaction with musrfit can be found in Thesis Chapter 4.

Clone repository
  • autotuning
  • build dks
    • dks 1.0.2
    • dks 1.1.2
  • dks modules
    • DKSBase
    • dksfft
    • dksmusrfit
    • dksopal
    • dkspet
  • extend dks
  • Home