<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re:Custom GPU Operations opset name in Intel® Distribution of OpenVINO™ Toolkit</title>
    <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1255077#M22787</link>
    <description>&lt;P&gt;Greetings,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;The Process is defined in the "How to Implement Custom GPU Operations" article -&amp;nbsp;&lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_GPU_Kernel.html" rel="noopener noreferrer" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_GPU_Kernel.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;You need to ensure that you follow all the required steps to do so.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Plus, this is further info regarding the operation set: &lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_MO_DG_IR_and_opsets.html" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_MO_DG_IR_and_opsets.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Sincerely,&lt;/P&gt;&lt;P&gt;Iffa&lt;/P&gt;&lt;BR /&gt;</description>
    <pubDate>Thu, 11 Feb 2021 00:32:53 GMT</pubDate>
    <dc:creator>Iffa_Intel</dc:creator>
    <dc:date>2021-02-11T00:32:53Z</dc:date>
    <item>
      <title>Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1254027#M22735</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;i created a custom operation for the inference engine (&lt;A href="https://github.com/accessio-gmbh/arivo_custom_openvino_layers" target="_blank"&gt;https://github.com/accessio-gmbh/arivo_custom_openvino_layers&lt;/A&gt;) according to &lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_Intro.html" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_Intro.html&lt;/A&gt; (without model optimizer stuff).&lt;/P&gt;
&lt;P&gt;While the CPU extension works fine, the GPU version does not work as expected:&lt;BR /&gt;"Cannot create WarpAffine layer stn_loc id:151 from unsupported opset: custom_layers"&lt;/P&gt;
&lt;P&gt;Layer in the .xml:&lt;/P&gt;
&lt;PRE&gt;&amp;lt;layer id="503" name="warp" precision="FP32" type="WarpAffine" version="custom_layers"&amp;gt;&lt;/PRE&gt;
&lt;P&gt;Loading the GPU extension:&lt;/P&gt;
&lt;PRE&gt;iie_core_.SetConfig({{InferenceEngine::PluginConfigParams::KEY_CONFIG_FILE, "/opt/iie/custom_layers.xml"}}, "GPU");&lt;/PRE&gt;
&lt;P&gt;My fix was to load the CPU extension to the CPU plugin, though I do not even use the CPU plugin. &lt;/P&gt;
&lt;PRE&gt;auto extension_ptr = InferenceEngine::make_so_pointer&amp;lt;InferenceEngine::IExtension&amp;gt;("/opt/iie/libcustom_cpu_extensions.so");&lt;BR /&gt;instance_-&amp;gt;iie_core_.AddExtension(extension_ptr, "CPU");&lt;/PRE&gt;
&lt;P&gt;&lt;BR /&gt;Is this the correct way to do this? Or can I somewhere in the custom layer .xml specify the opset?&lt;/P&gt;
&lt;P&gt;Thanks &lt;BR /&gt;Thomas&lt;/P&gt;</description>
      <pubDate>Mon, 08 Feb 2021 14:47:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1254027#M22735</guid>
      <dc:creator>Senfter__Thomas</dc:creator>
      <dc:date>2021-02-08T14:47:51Z</dc:date>
    </item>
    <item>
      <title>Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1255077#M22787</link>
      <description>&lt;P&gt;Greetings,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;The Process is defined in the "How to Implement Custom GPU Operations" article -&amp;nbsp;&lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_GPU_Kernel.html" rel="noopener noreferrer" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_GPU_Kernel.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;You need to ensure that you follow all the required steps to do so.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Plus, this is further info regarding the operation set: &lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_MO_DG_IR_and_opsets.html" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_MO_DG_IR_and_opsets.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Sincerely,&lt;/P&gt;&lt;P&gt;Iffa&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 11 Feb 2021 00:32:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1255077#M22787</guid>
      <dc:creator>Iffa_Intel</dc:creator>
      <dc:date>2021-02-11T00:32:53Z</dc:date>
    </item>
    <item>
      <title>Re: Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1255189#M22795</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I checked your links, but those steps are not the problem. The problem is that ngraph does not recognize my "custom_layers" opset without loading the CPU extension. I figured out that I can also load the extension to the GPU plugin using&lt;/P&gt;
&lt;PRE&gt;auto extension_ptr = InferenceEngine::make_so_pointer&amp;lt;InferenceEngine::IExtension&amp;gt;("/opt/iie/libcustom_cpu_extensions.so");&lt;BR /&gt;instance_-&amp;gt;iie_core_.AddExtension(extension_ptr, "GPU");&lt;/PRE&gt;
&lt;P&gt;So I guess you have to add the extension to any Plugin, so the opset is known to ngraph?&lt;/P&gt;
&lt;P&gt;Thanks&lt;BR /&gt;Thomas&lt;/P&gt;</description>
      <pubDate>Thu, 11 Feb 2021 07:39:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1255189#M22795</guid>
      <dc:creator>Senfter__Thomas</dc:creator>
      <dc:date>2021-02-11T07:39:21Z</dc:date>
    </item>
    <item>
      <title>Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256330#M22831</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;If you take a look at the CPU extensibility section you will found out that:&lt;/SPAN&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN style="font-size: 14px;"&gt;All custom kernels for the CPU plugin should be inherited from the&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.openvinotoolkit.org/latest/classInferenceEngine_1_1ILayerExecImpl.html" rel="noopener noreferrer" target="_blank" style="font-size: 14px;"&gt;InferenceEngine::ILayerExecImpl&lt;/A&gt;&lt;SPAN style="font-size: 14px;"&gt;&amp;nbsp;interface.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 14px;"&gt;Next, an implementation constructor checks parameters of &lt;/SPAN&gt;&lt;B style="font-size: 14px;"&gt;nGraph operation&lt;/B&gt;&lt;SPAN style="font-size: 14px;"&gt;, stores needed attributes, and stores an error message in the case of an error.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 14px;"&gt;Then, the registration of custom kernel implementation in the&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_Extension.html" rel="noopener noreferrer" target="_blank" style="font-size: 14px;"&gt;Extension&lt;/A&gt;&lt;SPAN style="font-size: 14px;"&gt;&amp;nbsp;class and implement AddExtension&amp;nbsp;method of the general plugin interface to load your primitives.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;Hence, to answer your question, yes, you need to&amp;nbsp;add the extension to the required plugin.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;Make sure to check out the CPU section after the GPU: &lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_CPU_Kernel.html" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_CPU_Kernel.html&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;and the custom ngraph section: &lt;A href="https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_AddingNGraphOps.html" target="_blank"&gt;https://docs.openvinotoolkit.org/latest/openvino_docs_IE_DG_Extensibility_DG_AddingNGraphOps.html&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;Sincerely,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14px;"&gt;Iffa&lt;/SPAN&gt;&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 16 Feb 2021 09:06:22 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256330#M22831</guid>
      <dc:creator>Iffa_Intel</dc:creator>
      <dc:date>2021-02-16T09:06:22Z</dc:date>
    </item>
    <item>
      <title>Re: Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256344#M22832</link>
      <description>&lt;P&gt;Ok, thank you for your help.&lt;/P&gt;</description>
      <pubDate>Tue, 16 Feb 2021 09:56:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256344#M22832</guid>
      <dc:creator>Senfter__Thomas</dc:creator>
      <dc:date>2021-02-16T09:56:32Z</dc:date>
    </item>
    <item>
      <title>Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256641#M22843</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Glad that helps.&lt;/P&gt;&lt;P&gt;If you have no other inquiries shall I close his thread?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;Sincerely,&lt;/P&gt;&lt;P&gt;Iffa&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 17 Feb 2021 03:02:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1256641#M22843</guid>
      <dc:creator>Iffa_Intel</dc:creator>
      <dc:date>2021-02-17T03:02:10Z</dc:date>
    </item>
    <item>
      <title>Re:Custom GPU Operations opset name</title>
      <link>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1258727#M22919</link>
      <description>&lt;P&gt;Greetings,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: Calibri, sans-serif; font-size: 11pt;"&gt;Intel will no longer monitor this thread since we have provided a solution.&amp;nbsp;If you need any additional information from Intel, please submit a new question.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: Calibri, sans-serif; font-size: 11pt;"&gt;Sincerely,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: Calibri, sans-serif; font-size: 11pt;"&gt;Iffa&lt;/SPAN&gt;&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 24 Feb 2021 06:38:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/Custom-GPU-Operations-opset-name/m-p/1258727#M22919</guid>
      <dc:creator>Iffa_Intel</dc:creator>
      <dc:date>2021-02-24T06:38:46Z</dc:date>
    </item>
  </channel>
</rss>

