code: def test_compare_performance(self):
      n = 2**10
      x = tf.range(n)
      x1 = tf.random.shuffle(x)
      x2 = tf.random.shuffle(x)
      actual = x1 > x2
  
      private_x1 = tfe.define_private_input("server0", lambda: x1)
      private_x2 = tfe.define_private_input("server0", lambda: x2)
  
      @tfe.function
      def test_compare(input_x1, input_x2):
          y = input_x1 > input_x2
          return y.reveal().to_native()
  
      Performance.time_log("1st run")
      result = test_compare(private_x1, private_x2)
      np.testing.assert_allclose(result, actual, rtol=0.0, atol=0.01)
      Performance.time_log("1st run")
  
      Performance.time_log("2nd run")
      test_compare(private_x1, private_x2)
      Performance.time_log("2nd run")
  
file_path: tf-encrypted/examples/benchmark/operation/op_profile.py
imports: import argparse
  import unittest
  import numpy
  import tensorflow
  import tf_encrypted
  from tf_encrypted.performance import Performance
  from tf_encrypted.protocol import ABY3
  from tf_encrypted.protocol import Pond
  from tf_encrypted.protocol import SecureNN
label_desc: Use image node_id 1 for calling the TestOPProfile obj's underlying member method code with example usage: obj.test_compare_performance() and returns: y