Deep-Learning-21-Examples icon indicating copy to clipboard operation
Deep-Learning-21-Examples copied to clipboard

Performance issues in your project (by P3)

Open DLPerf opened this issue 4 years ago • 1 comments

Hello! I've found a performance issue in your project:

  • tf.Session being defined repeatedly leads to incremental overhead.

You can make your program more efficient by fixing this bug. Here is the Stack Overflow post to support it.

Below is detailed description about tf.Session being defined repeatedly:

  • chapter_3/slim/datasets/download_and_convert_cifar10.py: with tf.Session('') as sess(here) is defined in the function _add_to_tfrecord(here) which is repeatedly called in the loop for i in range(_NUM_TRAIN_FILES)(here).
  • chapter_2/cifar10_eval.py: with tf.Session() as sess(here) is defined in the function eval_once(here) which is repeatedly called in the loop while True(here).
  • chapter_5/research/object_detection/eval_util.py: sess = tf.Session(master, graph=tf.get_default_graph())(here) is defined in the function run_checkpoint_once(here) which is repeatedly called in the loopwhile True(here).
  • chapter_5/research/slim/datasets/download_and_convert_cifar10.py: with tf.Session('') as sess(here) is defined in the function _add_to_tfrecord(here) which is repeatedly called in the loop for i in range(_NUM_TRAIN_FILES)(here).
  • chapter_17/im2txt/evaluate.py: with tf.Session() as sess(here) is defined in the function run_once(here) which is repeatedly called in the loop while True(here).
  • chapter_9/server/serve.py: sess = tf.Session(graph=graph)(here) is repeatedly called in the loop for name in os.listdir(a.local_models_dir)(here).
  • chapter_10/delete_broken_img.py: sess = tf.Session()(here) is repeatedly called in the loop for i, img_path in enumerate(all_pic_list)(here).
  • chapter_10/pix2pix-tensorflow/server/serve.py: sess = tf.Session(graph=graph)(here) is repeatedly called in the loop for name in os.listdir(a.local_models_dir)(here).

tf.Session being defined repeatedly could lead to incremental overhead. If you define tf.Session out of the loop and pass tf.Session as a parameter to the loop, your program would be much more efficient.

Looking forward to your reply. Btw, I am very glad to create a PR to fix it if you are too busy.

DLPerf avatar Aug 25 '21 07:08 DLPerf

Hello, I'm looking forward to your reply~

DLPerf avatar Nov 04 '21 09:11 DLPerf