[問題] Profiling 包含tensorflow跟CUDA的.py消失

看板Python作者時間7年前 (2018/04/18 20:29), 7年前編輯推噓1(104)
留言5則, 1人參與, 最新討論串1/1
目前我有一支 python code 裡面包含 1. Tensorflow (純 predict,用了二到三個 model) 2. call CUDA C++ code 3. 1 and 2 在python 開多個 thread 來跑 現在我想優化整個流程,首先第一步我打算 profile 時間與記憶體用量 想請問有沒有推薦怎樣的工具 目前我試了 cProfile + gprof2dot https://blog.gtwang.org/programming/python-cprofile-and-gprof2dot-tutorial/ 圖看起來不是很合理 可能太過複雜還是怎樣 CUDA C++ 那邊可能可以用 nvvp 來看 session.run 可能可以用 timeline (tensorflow 自帶) 來看 但是以上兩者我是分別用子執行緒在跑, 而且I/O 有依賴關系 ( CUDA 的input 是 tensorflow models 的 output ) 多執行緒 我準備用yappi來分析看看 有人有建議怎樣的工具或推薦的做法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.37.32 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1524054545.A.191.html ※ 編輯: Morphee (114.34.37.32), 04/18/2018 20:29:58 ※ 編輯: Morphee (114.34.37.32), 04/18/2018 20:33:15

04/18 23:12, , 1F
先試著將tensorflow和cuda c++ code兩邊獨立開來
04/18 23:12, 1F

04/18 23:13, , 2F
既然cuda的input是來自tensorflow model的output
04/18 23:13, 2F

04/18 23:14, , 3F
那在測cuda c++ code的時候,改用已經存起來的input去跑
04/18 23:14, 3F

04/18 23:15, , 4F
把問題簡化一點,細部的benchmark先跑好,再去看整體的
04/18 23:15, 4F

04/18 23:15, , 5F
表現是否有改善
04/18 23:15, 5F
文章代碼(AID): #1QrpeH6H (Python)