Skip to content

[FEA] cuda.core: add remaining new NVRTC options to ProgramOptions (CUDA 13.1+) #2368

Description

@leofang

Summary

ProgramOptions kept pace with NVRTC 12.9 (ofast_compile, frandom_seed, no_cache are all
present), but not with the 13.x option additions:

Option Documented since Note
--warning-as-error (-Werror) 13.1 promote warnings to errors
--Wreorder 13.1 member-initialization-order warning
--enable-tile, --tile-only, --simt-only, --default-tile, --diagnose-implicit-tile-var 13.3 tile compilation — coordinate with #1322 / #1434 rather than adding blind
--use-bundled-headers=<dir> 13.3 scoped in #2363

New options must be version-gated with actionable errors per the mechanism tracked in #337.

Design sketch (draft — needs design-meeting review)

Important

Starting point only, not a settled design — review in the cuda.core design meeting.

  • warning_as_error: bool | str | list[str] (bare -Werror vs. -Werror=<kinds> — check the
    exact accepted forms against the 13.x NVRTC docs during implementation).
  • wreorder: bool.
  • Tile flags: hold until the Program-side Tile IR design (cuda.core.Program: Support Tile IR #1322) settles, then add as one
    coherent group.

Open questions for the meeting:

  1. Reject unsupported options at ProgramOptions construction or at compile() (per Add descriptive exception handling to linker and program options which are not supported on a CTK version basis + handle in tests #337)?
  2. Are the tile flags meaningful without the Tile IR output path, or strictly coupled to cuda.core.Program: Support Tile IR #1322?

References

-- Leo's bot

Metadata

Metadata

Assignees

No one assigned

    Labels

    cuda.coreEverything related to the cuda.core modulefeatureNew feature or requesttriageNeeds the team's attention

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions