How to profile Flops when running inferences with TensorRT

Hi all, how can I extract the Flops when running the inference with tensorRT? I am using the sample script tftrt_sample.py and incorporated the below code but not sure what kind of parameters should I use or if it is the right function to profile the flops for inference:

run_meta = tf.RunMetadata()
with tf.Session(graph=tf.Graph()) as sess:
    opts = tf.profiler.ProfileOptionBuilder.float_operation()    
    flops = tf.profiler.profile(sess.graph, run_meta=run_meta, cmd='op', options=opts)
    opts = tf.profiler.ProfileOptionBuilder.trainable_variables_parameter()    
    params = tf.profiler.profile(sess.graph, run_meta=run_meta, cmd='op', options=opts)
    print("{:,} --- {:,}".format(flops.total_float_ops, params.total_parameters))

Tracelog:

Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Incomplete shape.
Parsing Inputs...

=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              1
-min_occurrence             0
-step                       -1
-order_by                   float_ops
-account_type_regexes       .*
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     float_ops
-output                     stdout:

==================Model Analysis Report======================

Doc:
op: The nodes are operation kernel type, such as MatMul, Conv2D. Graph nodes belonging to the same type are aggregated together.
flops: Number of float operations. Note: Please read the implementation for the math behind it.

Profile:
node name | # float_ops
Conv2D                   27.86b float_ops (100.00%, 99.90%)
Add                      17.86m float_ops (0.10%, 0.06%)
MaxPool                  8.63m float_ops (0.03%, 0.03%)
Mean                     401.41k float_ops (0.00%, 0.00%)
Softmax                  20.00k float_ops (0.00%, 0.00%)
BiasAdd                  4.00k float_ops (0.00%, 0.00%)
Equal                    4.00k float_ops (0.00%, 0.00%)

======================End of Report==========================
Incomplete shape.
Incomplete shape.
Incomplete shape.
Parsing Inputs...

=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              0
-min_occurrence             0
-step                       -1
-order_by                   name
-account_type_regexes       _trainable_variables
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     params
-output                     stdout:

==================Model Analysis Report======================

Doc:
op: The nodes are operation kernel type, such as MatMul, Conv2D. Graph nodes belonging to the same type are aggregated together.
param: Number of parameters (in the Variable).

Profile:
node name | # parameters

Some tips?