Skip to content

CI: Add a way to error on operator fallback #1994

Description

@zatkins-dev

There are a ton of recent bugs found which are due to us silently falling back on RTC compilation failure for CUDA/HIP.
While this silent fallback is generally good for user-facing code, we need a way to make that error loud during CI testing for tests that should not fall back.

I think the easiest way would be to have a CeedSetWarnOperatorFallback(Ceed ceed, bool should_warn) (or similar) function which turns the normally silent (CeedDebug) fallback messages into loud (printf) fallback messages. We could also make it more specific, say CeedSetWarnJiTCompilationFailures, which is really the case we most often care about.

There's a couple edge cases we need to be careful about, such as CeedOperatorLinearAssembleDiagonal and CeedOperatorLinearAssembleSingle which intentionally fall back to the reference implementation, then use the fallback parent implementation of the inner CeedOperatorLinearAssembleQFunctionBuildOrUpdate kernel.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions