Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • VTK-m VTK-m
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 212
    • Issues 212
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 40
    • Merge requests 40
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • VTKVTK
  • VTK-mVTK-m
  • Merge requests
  • !2489

Enable shared CUDA builds when not compiling virtuals

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Kenneth Moreland requested to merge kmorel/vtk-m:cuda-shared-no-virtual2 into master May 08, 2021
  • Overview 5
  • Commits 2
  • Pipelines 9
  • Changes 5

The reason why we did not support shared libraries when CUDA compiles were on is that virtual methods require a special linking step to pull together all virtual methods that might be called. I other words, you cannot call a virtual CUDA method defined inside a library. This requirement goes away when virtuals are removed.

Also removed the necessity of using seprable compilation with cuda. Again, this is only needed when a CUDA function is defined in one translation unit and used in another. Now we can enforce that all translation units define their own CUDA functions.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: cuda-shared-no-virtual2