Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Novice
172 Views

Loading CPU extensions with 2020R1

I'm a bit confused, how is CPU extensions loading code supposed to change with v2020R1.

The sample has this code:

 

            if ((flag.find("CPU") != std::string::npos)) {
#ifdef WITH_EXTENSIONS
                /** Load default extensions lib for the CPU device (e.g. SSD's DetectionOutput)**/
                ie.AddExtension(std::make_shared<Extensions::Cpu::CpuExtensions>(), "CPU");
#endif
                if (!FLAGS_l.empty()) {
                    // CPU(MKLDNN) extensions are loaded as a shared library and passed as a pointer to base extension
                    auto extension_ptr = make_so_pointer<IExtension>(FLAGS_l);
                    ie.AddExtension(extension_ptr, "CPU");
                    slog::info << "CPU Extension loaded: " << FLAGS_l << slog::endl;
                }
            }

 

However, Extensions::Cpu::CpuExtensions is only seems to be defined in the template for extension generator, and not in an actual API. As far as loading by the path to libMKLDNN.dylib, this doesn't seem to work either:

 

Exception in loadNetwork dlSym cannot locate method 'CreateExtension': dlsym(0x7feaa452ece0, CreateExtension): symbol not found

 

Please advise

 

0 Kudos
1 Reply
Highlighted
Employee
172 Views

Hi Alex,

In the latest OpenVINO 2020.1 release, the CPU extensions library were removed as they were moved into the plugin.

Please refer the release notes for additional changes.

Regards,

Jaivin

0 Kudos