generative-compression icon indicating copy to clipboard operation
generative-compression copied to clipboard

Performance issues in you project (by P3)

Open DLPerf opened this issue 4 years ago • 1 comments

Hello! I've found a performance issue in your project: batch() should be called before map(), which could make your program more efficient. Here is the tensorflow document to support it.

Detailed description is listed below:

  • /data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_parser)(here).
  • /data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_parser)(here).
  • /data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_preprocess_inference)(here).
  • /cGAN/data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_parser)(here).
  • /cGAN/data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_parser)(here).
  • /cGAN/data.py: dataset.batch(batch_size)(here) should be called before dataset.map(_preprocess_inference)(here).

Besides, you need to check the function called in map()(e.g., _preprocess_inference called in dataset.map(_preprocess_inference)) whether to be affected or not to make the changed code work properly. For example, if _preprocess_inference needs data with shape (x, y, z) as its input before fix, it would require data with shape (batch_size, x, y, z).

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 30 '21 08:08 DLPerf

Hey, this looks good, unfortunately it's been a while since I looked at the codebase. I agree from the documentation that this should increase performance. Happy to accept a PR if you create it for this and any other issues.

Justin-Tan avatar Aug 30 '21 11:08 Justin-Tan