openvino icon indicating copy to clipboard operation
openvino copied to clipboard

[Good First Issue] [ARM]: Implement CPU plugin just-in-time emitter for IsInf operation

Open eshoguli opened this issue 9 months ago • 3 comments

Context

JIT Emitters are part of code generation feature (a.k.a. tensor compiler) that automatically produces highly-efficient optimized fused subgraph binary code. Each emitter implements specific operation from low level OpenVINO dialect.

Prerequisites

Recommended to use ARM CPU based platform for development (e.g. Mac, Raspberry Pi etc). Emulators (e.g. QEMU) is still an option, but not that convenient, especially for final performance evaluation.

What needs to be done?

Before emitter implementation, please, modify tests to be sure that deveoped functionality is covered by test:

Tests

Tests are disabled in default build, so ensure to add -DENABLE_TESTS=ON into cmake command.

GoogleTest is used for testing. CPU functional test target is ov_cpu_func_tests. You can use two GoogleTest filters for element-wise and activation operations:

  • for element-wise operations:
./bin/[platform]/[build_type]/ov_cpu_func_tests --gtest_filter="*smoke*Eltwise*"
  • for activations:
./bin/[platform]/[build_type]/ov_cpu_func_tests --gtest_filter="*smoke*Activation*"

Example Pull Requests

  • Abs operation: https://github.com/openvinotoolkit/openvino/pull/23692
  • Sigmoid operation, which reuses Exp emitter: https://github.com/openvinotoolkit/openvino/pull/23065

Resources

Contact points

@eshoguli, @dmitry-gorokhov

Ticket

CVS-140724

eshoguli avatar May 08 '24 12:05 eshoguli

.take

inbasperu avatar May 09 '24 03:05 inbasperu

Thank you for looking into this issue! Please let us know if you have any questions or require any help.

github-actions[bot] avatar May 09 '24 03:05 github-actions[bot]

Hello @eshoguli, @dmitry-gorokhov,

I have implemented the IsInf JIT emitter for the ARM64 SIMD platform. The work is detailed in this PR: #24471

It would be great if you could review it and let me know if any further adjustments are needed. Thank you!

inbasperu avatar May 11 '24 05:05 inbasperu