File tree Expand file tree Collapse file tree 2 files changed +7
-4
lines changed Expand file tree Collapse file tree 2 files changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -667,10 +667,6 @@ void RegisterOperatorWithMetaInfo(
667
667
void RegisterOperatorWithMetaInfoMap (
668
668
const paddle::OpMetaInfoMap& op_meta_info_map) {
669
669
auto & meta_info_map = op_meta_info_map.GetMap ();
670
-
671
- PADDLE_ENFORCE_EQ (meta_info_map.empty (), false ,
672
- platform::errors::PreconditionNotMet (
673
- " No custom operator that needs to be registered." ));
674
670
VLOG (1 ) << " Custom Operator: size of op meta info map - "
675
671
<< meta_info_map.size ();
676
672
// pair: {op_type, OpMetaInfo}
Original file line number Diff line number Diff line change 21
21
#include < string>
22
22
#include < utility>
23
23
#include < vector>
24
+ #include " paddle/fluid/extension/include/ext_op_meta_info.h"
24
25
#include " paddle/fluid/framework/feed_fetch_method.h"
25
26
#include " paddle/fluid/framework/feed_fetch_type.h"
26
27
#include " paddle/fluid/framework/ir/fuse_pass_base.h"
@@ -612,6 +613,12 @@ std::unique_ptr<PaddlePredictor> CreatePaddlePredictor<
612
613
platform::errors::InvalidArgument (
613
614
" Note: Each config can only be used for one predictor." ));
614
615
616
+ // Register custom operators compiled by the user.
617
+ // This function can only be executed once per process.
618
+ static std::once_flag custom_operators_registered;
619
+ std::call_once (custom_operators_registered,
620
+ []() { paddle::RegisterAllCustomOperator (); });
621
+
615
622
if (config.use_gpu ()) {
616
623
static std::once_flag gflags_initialized;
617
624
static bool process_level_allocator_enabled;
You can’t perform that action at this time.
0 commit comments