ExecutionError

ExecutionError()

Raised after op.apply(...) if a runtime error occurred during the execution of the Operator is detected.

The nature of these errors can be various, for example:

  • Unstable numerical behavior (e.g., NaNs);
  • Out-of-bound accesses to arrays, which in turn can be caused by:
    • Incorrect user-provided equations (e.g., abuse of the “indexed notation”);
    • A buggy optimization pass;
  • Running out of resources:
    • Memory (e.g., too many temporaries in the generated code);
    • Device shared memory or registers (e.g., too many threads per block);
  • etc.
Back to top