Skip to content

Simplify subgroup feature controls #8207

@andyleiserson

Description

@andyleiserson

A couple possible simplifications that came up in working on #8203 and discussion in today's maintainers meeting:

  • Naga has an enum SubgroupOperationSet that finely classifies the supported subgroup operations. It is not clear that this is necessary and non-standard configurations are not well tested. Consider removing it.
  • There is logic to set Capabilities::SUBGROUP whenever Features::SUBGROUP_VERTEX is set.
    features.intersects(wgt::Features::SUBGROUP | wgt::Features::SUBGROUP_VERTEX),
    Although it is likely true that the fragment/compute subgroup support governed by Capabilities::SUBGROUP is available whenever Feature::SUBGROUP_VERTEX is, it seems simpler not to do this kind of mapping of feature enables behind the scenes due to the risk of confusion. It would be better if the Capabilities and Features aligned exactly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: robustnessMinimizing the impact when things go wrongkind: refactorMaking existing function faster or nicertype: enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions