openvino icon indicating copy to clipboard operation
openvino copied to clipboard

[TF FE] Support complex tensors for Rsqrt operation

Open dyogaharshitha opened this issue 11 months ago • 25 comments

Extended functionality to handle complex numbers

Details:

  • Added code to handle complex numbers

Tickets:

  • ticket-id #23238

dyogaharshitha avatar Mar 12 '24 03:03 dyogaharshitha

please add layer tests in this PR

I have commit changes

dyogaharshitha avatar Mar 12 '24 10:03 dyogaharshitha

build_jenkins

rkazants avatar Mar 13 '24 09:03 rkazants

@dyogaharshitha, please fix code-style

rkazants avatar Mar 13 '24 09:03 rkazants

build_jenkins

rkazants avatar Mar 14 '24 08:03 rkazants

build_jenkins

rkazants avatar Mar 14 '24 08:03 rkazants

@rkazants All the checks are not passed. What can be done

dyogaharshitha avatar Mar 14 '24 09:03 dyogaharshitha

build_jenkins

rkazants avatar Mar 15 '24 09:03 rkazants

@dyogaharshitha, I seen code-style check failing. Please apply clang formatting:

src/frontends/tensorflow_common/src/op/rsqrt.cpp:16:+#include "utils.hpp"
src/frontends/tensorflow_common/src/op/rsqrt.cpp:31:-    if (complex_type_mark) { 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:31:+    if (complex_type_mark) {
src/frontends/tensorflow_common/src/op/rsqrt.cpp:33:-        input = complex_type_mark->input_value(0); 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:33:+        input = complex_type_mark->input_value(0);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:43:-        // complex_number = a + ib ; real_part=a ; imag_part = b 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:43:+        // complex_number = a + ib ; real_part=a ; imag_part = b
src/frontends/tensorflow_common/src/op/rsqrt.cpp:46:-        
src/frontends/tensorflow_common/src/op/rsqrt.cpp:47:-        auto const_half = create_same_type_const_scalar<float>(real_part, 0.5f); 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:48:-        auto const_two = create_same_type_const_scalar<float>(real_part, 2.0f); 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:49:-        
src/frontends/tensorflow_common/src/op/rsqrt.cpp:50:-        // get square of absolute value 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:51:-        auto mod_sqr = make_shared<v1::Power>(make_shared<v1::Add>(make_shared<v1::Power>(real_part, const_two), \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:52:-            make_shared<v1::Power>(imag_part, const_two)),const_half) ; // a2 + b2
src/frontends/tensorflow_common/src/op/rsqrt.cpp:54:-        // sqrt_real = sqrt( a + sqrt( a^2 + b^2) / 2 ) 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:47:+        auto const_half = create_same_type_const_scalar<float>(real_part, 0.5f);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:48:+        auto const_two = create_same_type_const_scalar<float>(real_part, 2.0f);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:49:+
src/frontends/tensorflow_common/src/op/rsqrt.cpp:50:+        // get square of absolute value
src/frontends/tensorflow_common/src/op/rsqrt.cpp:51:+        auto mod_sqr = make_shared<v1::Power>(make_shared<v1::Add>(make_shared<v1::Power>(real_part, const_two),
src/frontends/tensorflow_common/src/op/rsqrt.cpp:52:+                                                                   make_shared<v1::Power>(imag_part, const_two)),
src/frontends/tensorflow_common/src/op/rsqrt.cpp:53:+                                              const_half);  // a2 + b2
src/frontends/tensorflow_common/src/op/rsqrt.cpp:54:+
src/frontends/tensorflow_common/src/op/rsqrt.cpp:55:+        // sqrt_real = sqrt( a + sqrt( a^2 + b^2) / 2 )
src/frontends/tensorflow_common/src/op/rsqrt.cpp:56:-        auto sqrt_real = make_shared<v1::Power>( make_shared<v1::Divide>( \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:57:-            make_shared<v1::Add>(mod_sqr,real_part), 2.0 ) ,const_half);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:58:-        auto sign = make_shared<v1::Divide>( imag_part, make_shared<v1::Power>( \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:59:-            make_shared<v1::Power>( imag_part, const_two), const_half) ); 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:60:-        auto sqrt_imag = make_shared<v1::Power>( make_shared<v1::Divide>( \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:61:-            make_shared<v1::Add>(mod_sqr,make_shared<v0::Negative>(real_part)), 2.0 ) ,const_half); 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:57:+        auto sqrt_real =
src/frontends/tensorflow_common/src/op/rsqrt.cpp:58:+            make_shared<v1::Power>(make_shared<v1::Divide>(make_shared<v1::Add>(mod_sqr, real_part), 2.0), const_half);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:59:+        auto sign =
src/frontends/tensorflow_common/src/op/rsqrt.cpp:60:+            make_shared<v1::Divide>(imag_part,
src/frontends/tensorflow_common/src/op/rsqrt.cpp:61:+                                    make_shared<v1::Power>(make_shared<v1::Power>(imag_part, const_two), const_half));
src/frontends/tensorflow_common/src/op/rsqrt.cpp:62:+        auto sqrt_imag = make_shared<v1::Power>(
src/frontends/tensorflow_common/src/op/rsqrt.cpp:63:+            make_shared<v1::Divide>(make_shared<v1::Add>(mod_sqr, make_shared<v0::Negative>(real_part)), 2.0),
src/frontends/tensorflow_common/src/op/rsqrt.cpp:64:+            const_half);
src/frontends/tensorflow_common/src/op/rsqrt.cpp:63:-        // rsqrt_imag = - sqrt_imag/(sqrt_real^2 + sqrt_imag^2) 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:64:-        auto rsqrt_real = make_shared<v1::Divide>(sqrt_real , make_shared<v1::Add>( \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:65:-            make_shared<v1::Power>( sqrt_real,const_two) , make_shared<v1::Power>(sqrt_imag,const_two) )) ; 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:66:-        auto rsqrt_imag = make_shared<v1::Negative>( make_shared<v1::Divide>(sqrt_imag ,  \
src/frontends/tensorflow_common/src/op/rsqrt.cpp:67:-            make_shared<v1::Add>( make_shared<v1::Power>(sqrt_real,const_two) + make_shared<v1::Power>(sqrt_imag,const_two) ) )) ; 
src/frontends/tensorflow_common/src/op/rsqrt.cpp:68:-         
src/frontends/tensorflow_common/src/op/rsqrt.cpp:66:+        // rsqrt_imag = - sqrt_imag/(sqrt_real^2 + sqrt_imag^2)
src/frontends/tensorflow_common/src/op/rsqrt.cpp:67:+        auto rsqrt_real = make_shared<v1::Divide>(sqrt_real,
src/frontends/tensorflow_common/src/op/rsqrt.cpp:68:+                                                  make_shared<v1::Add>(make_shared<v1::Power>(sqrt_real, const_two),
src/frontends/tensorflow_common/src/op/rsqrt.cpp:69:+                                                                       make_shared<v1::Power>(sqrt_imag, const_two)));
src/frontends/tensorflow_common/src/op/rsqrt.cpp:70:+        auto rsqrt_imag = make_shared<v1::Negative>(
src/frontends/tensorflow_common/src/op/rsqrt.cpp:71:+            make_shared<v1::Divide>(sqrt_imag,
src/frontends/tensorflow_common/src/op/rsqrt.cpp:72:+                                    make_shared<v1::Add>(make_shared<v1::Power>(sqrt_real, const_two) +
src/frontends/tensorflow_common/src/op/rsqrt.cpp:73:+                                                         make_shared<v1::Power>(sqrt_imag, const_two))));
src/frontends/tensorflow_common/src/op/rsqrt.cpp:74:+
src/frontends/tensorflow_common/src/op/rsqrt.cpp:77:-    }
src/frontends/tensorflow_common/src/op/rsqrt.cpp:78:-    else{
src/frontends/tensorflow_common/src/op/rsqrt.cpp:83:+    } else {
time=[202](https://github.com/openvinotoolkit/openvino/actions/runs/8277772682/job/22648765282#step:7:208)4-03-14T08:43:39.122Z level=INFO msg="reviewdog: failed to post a review comment: POST https://api.github.com/repos/openvinotoolkit/openvino/pulls/[233](https://github.com/openvinotoolkit/openvino/actions/runs/8277772682/job/22648765282#step:7:239)91/reviews: 403 Resource not accessible by integration []"
reviewdog: This GitHub Token doesn't have write permission of Review API [1],

rkazants avatar Mar 15 '24 09:03 rkazants

build_jenkins

rkazants avatar Mar 15 '24 13:03 rkazants

@dyogaharshitha, please check issues reported in CI.

rkazants avatar Mar 16 '24 15:03 rkazants

@dyogaharshitha, please check issues reported in CI

Changes made to pytest

dyogaharshitha avatar Mar 19 '24 01:03 dyogaharshitha

build_jenkins

mlukasze avatar Mar 19 '24 09:03 mlukasze

@dyogaharshitha, please fix build issues. See CI logs for failing jobs

rkazants avatar Mar 19 '24 09:03 rkazants

@dyogaharshitha, please fix build issues. See CI logs for failing jobs

Linux build failed due to missing files for build. Files not found at location. I have not changed signature of file to large extent. I am not able to understand why has code failed to build

dyogaharshitha avatar Mar 19 '24 10:03 dyogaharshitha

for refence Linux ARM64 (Ubuntu 20.04, Python 3.11) / Build (pull_request) Failing after 10m image

dyogaharshitha avatar Mar 19 '24 10:03 dyogaharshitha

for refence Linux ARM64 (Ubuntu 20.04, Python 3.11) / Build (pull_request) Failing after 10m Screenshot 2024-03-19 153443

dyogaharshitha avatar Mar 19 '24 10:03 dyogaharshitha

@dyogaharshitha, logs by this link https://github.com/openvinotoolkit/openvino/actions/runs/8340359528/job/22824953843?pr=23391 image

please build locally on your machine to make sure that build is fine

rkazants avatar Mar 21 '24 08:03 rkazants

build_jenkins

rkazants avatar Mar 23 '24 20:03 rkazants

@dyogaharshitha, please fix build locally. Now it fails

Tried building locally. Build failed. Unable to sort out the issue

dyogaharshitha avatar Mar 24 '24 09:03 dyogaharshitha

@rkazants tried building with cmake that has run into errors in cmakelist file at multiple locations in the project. Could you please suggest solution

dyogaharshitha avatar Mar 29 '24 07:03 dyogaharshitha

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar Apr 19 '24 00:04 github-actions[bot]

hey @dyogaharshitha will you find a time to finish this PR, or should we move it back to open pool?

mlukasze avatar Apr 19 '24 05:04 mlukasze

hey @dyogaharshitha will you find a time to finish this PR, or should we move it back to open pool?

@mlukasze I need some advice from your side. I have done my coding part. Project has built issues that are not in my control

dyogaharshitha avatar Apr 19 '24 06:04 dyogaharshitha

Hi @dyogaharshitha, did you manage to build OpenVINO with your changes on your local machine?

rkazants avatar Apr 23 '24 15:04 rkazants

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar May 08 '24 00:05 github-actions[bot]

This PR was closed because it has been stalled for 2 week with no activity.

github-actions[bot] avatar May 15 '24 00:05 github-actions[bot]

Hi @dyogaharshitha, did you manage to build OpenVINO with your changes on your local machine?

rkazants avatar May 15 '24 05:05 rkazants

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar May 30 '24 00:05 github-actions[bot]

I am not able to built it on local machine

dyogaharshitha avatar May 30 '24 00:05 dyogaharshitha