| #if defined(__linux__) |
| |
| #include "caffe2/core/context.h" |
| #include "caffe2/core/operator.h" |
| #include <csignal> |
| |
| namespace caffe2 { |
| |
| class CrashOp final : public Operator<CPUContext> { |
| public: |
| CrashOp(const OperatorDef& operator_def, Workspace* ws) |
| : Operator<CPUContext>(operator_def, ws) {} |
| |
| bool RunOnDevice() override { |
| raise(SIGABRT); |
| return true; |
| } |
| }; |
| |
| OPERATOR_SCHEMA(Crash).NumInputs(0).NumOutputs(0).SetDoc( |
| R"DOC(Crashes the program. Use for testing)DOC"); |
| |
| REGISTER_CPU_OPERATOR(Crash, CrashOp); |
| |
| } // namespace caffe2 |
| #endif |