Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • website website
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 10
    • Issues 10
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • groupe-calculgroupe-calcul
  • websitewebsite
  • Merge requests
  • !1003

New job offer job_7520c446318f4e57ae0e227ea7b2d795

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Calcul Bot requested to merge job_7520c446318f4e57ae0e227ea7b2d795 into master Nov 23, 2021
  • Overview 0
  • Commits 2
  • Pipelines 2
  • Changes 2

Title: Design of a modern C++ library for performance-portable mesh handling on GPU
Date: 2021-11-23 17:02
Slug: job_7520c446318f4e57ae0e227ea7b2d795
Category: job
Authors: Julien Bigot
Email: julien.bigot@cea.fr
Job_Type: Stage
Tags: stage
Template: job_offer
Job_Location: Maison de la Simulation
Job_Duration: 4 à 6 mois
Job_Website:
Job_Employer: CEA
Expiration_Date: 2022-02-15
Attachment: job_7520c446318f4e57ae0e227ea7b2d795_attachment.pdf

Maison de la Simulation offers a Master 2, or projet de fin d’études internship to design the GPU version of a library leveraging the latest features of C++ to handle high-dimensional meshes.

ddc is a C++ header-only domain decomposition library developed at Maison de la Simulation. ddc aims to support intensive computation over high-dimensional meshes. It provides multi-dimensional containers (based on std::mdspan [2] proposed for C++23), iterators over geometric elements and type-safe array indexing. By giving a mesh semantic to algorithms, ddc eases working on fields mapped on sub-meshes, and switching between meshes; it supports writing generic mesh-independant algorithms, or optimized mesh-specific algorithms.
ddc design is a work in progress whose first prototype targets CPU. The goal of the internship is
to evaluate the design changes required to support portability to GPU. The proposed design should support seamless feature and performance portability between CPU and GPU. To reach that goal, std::mdspan might be replaced by Kokkos [3] equivalents and iteration algorithms will have to be designed that work on both CPU and GPU.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: job_7520c446318f4e57ae0e227ea7b2d795