Skip to content

Add cuda compilation environment support #158

@waruqi

Description

@waruqi
Member

Support CUDA Toolkit http://docs.nvidia.com/cuda/index.html

Activity

added this to the 2.1.10 milestone on Feb 26, 2018
waruqi

waruqi commented on Mar 9, 2018

@waruqi
MemberAuthor

xmake will detect cuda sdk environment automatically, we can only run the following command to compile cuda program:

$ xmake

And we can also configure a given cuda sdk directory if detect failed.

$ xmake f --cuda=/usr/local/cuda-9.1/ 
$ xmake
waruqi

waruqi commented on Mar 9, 2018

@waruqi
MemberAuthor

Create an empty project for cuda:

$ xmake create -P test -l cuda
$ cd test
$ xmake
waruqi

waruqi commented on Mar 9, 2018

@waruqi
MemberAuthor
waruqi

waruqi commented on May 29, 2018

@waruqi
MemberAuthor
-- define target
target("cuda_console")

    -- set kind
    set_kind("binary")

    -- add include directories
    add_includedirs("inc")

    -- add files
    add_files("src/*.cu")

    -- generate SASS code for each SM architecture
    for _, sm in ipairs({"30", "35", "37", "50", "52", "60", "61", "70"}) do
        add_cuflags("-gencode arch=compute_" .. sm .. ",code=sm_" .. sm)
        add_ldflags("-gencode arch=compute_" .. sm .. ",code=sm_" .. sm)
    end

    -- generate PTX code from the highest SM architecture to guarantee forward-compatibility
    sm = "70"
    add_cuflags("-gencode arch=compute_" .. sm .. ",code=compute_" .. sm)
    add_ldflags("-gencode arch=compute_" .. sm .. ",code=compute_" .. sm)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @waruqi

        Issue actions

          Add cuda compilation environment support · Issue #158 · xmake-io/xmake