-
Notifications
You must be signed in to change notification settings - Fork 2.6k
[Good First Issue] [ARM]: Implement CPU plugin just-in-time emitter for Sqrt operation #24446
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
.take |
Thank you for looking into this issue! Please let us know if you have any questions or require any help. |
Hi @stibrew. Do you have any updates on the progress? Any help needed from our side? |
Hi @dmitry-gorokhov |
@stibrew There is no rush at all. So take your time :) |
@mlukasze Can I take this up? |
sure :) |
.take |
Thank you for looking into this issue! Please let us know if you have any questions or require any help. |
* Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters * Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 * Add the EltwiseSqrt entry in the aarch64 executors supported algorithms * Add the ActivationType::Sqrt in the getPrimitiveType in activations Closes: openvinotoolkit#24446 Signed-off-by: Nashez Zubair <[email protected]>
* Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters * Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 * Add the EltwiseSqrt entry in the aarch64 executors supported algorithms * Add the ActivationType::Sqrt in the getPrimitiveType in activations * Fix an unnecessary exp emitter in SoftSign included in the previous PR Closes: openvinotoolkit#24446 Signed-off-by: Nashez Zubair <[email protected]>
* Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters * Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 * Add the EltwiseSqrt entry in the aarch64 executors supported algorithms * Add the ActivationType::Sqrt in the getPrimitiveType in activations * Fix an unnecessary exp emitter in SoftSign included in the previous PR Closes: openvinotoolkit#24446 Signed-off-by: Nashez Zubair <[email protected]>
@dmitry-gorokhov Can you link my Sqrt PR to this issue? |
linked |
* Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters * Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 * Add the EltwiseSqrt entry in the aarch64 executors supported algorithms * Add the ActivationType::Sqrt in the getPrimitiveType in activations * Fix an unnecessary exp emitter in SoftSign included in the previous PR Closes: openvinotoolkit#24446 Signed-off-by: Nashez Zubair <[email protected]>
* Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters * Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 * Add the EltwiseSqrt entry in the aarch64 executors supported algorithms * Add the ActivationType::Sqrt in the getPrimitiveType in activations * Fix an unnecessary exp emitter in SoftSign included in the previous PR Closes: openvinotoolkit#24446 Signed-off-by: Nashez Zubair <[email protected]>
### Details: - Added a jit_sqrt_emitter derived class in aarch64/jit_eltwise_emitters - Created entry Algorithm::EltwiseSqrt in the get_supported_precisions in nodes/kernels/aarch64 - Add the EltwiseSqrt entry in the aarch64 executors supported algorithms - Add the ActivationType::Sqrt in the getPrimitiveType in activations ### Tickets: - #24446 Signed-off-by: Nashez Zubair <[email protected]>
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?
fp32
Sqrt operation JIT emitter for ARM64 SIMD platform. Use OpenVINO CPU plugin JIT emitters documentation and Arm A-profile A64 Instruction Set Architecture documentation for details.Before emitter implementation, please, modify tests to be sure that deveoped functionality is covered by test:
jit
kernel check in element-wise or activation test, the test must fail.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:./bin/[platform]/[build_type]/ov_cpu_func_tests --gtest_filter="*smoke*Eltwise*"
./bin/[platform]/[build_type]/ov_cpu_func_tests --gtest_filter="*smoke*Activation*"
Example Pull Requests
Resources
Contact points
@eshoguli, @dmitry-gorokhov
Ticket
CVS-140845
The text was updated successfully, but these errors were encountered: