Task #5460
closed
Investigate sync performance
- Blocked by Task #5458: Port the performance-tests to pulp_file added
I'm going to plug a couple of other tools that should be evaluated by the person who does this work. It might make your life easier.
Py-Spy
https://github.com/benfred/py-spy
This is sort of like cProfile, except that instead of tracing and recording the execution of every operation, it takes snapshots of the interpreter X times per second to see what functions are running for the most time. Unlike cProfile it does not influence the runtime performance of the operation -- running cProfile usually makes everything take several times longer than it otherwise would have which is painful if you have to re-run things frequently. It also has a nice live ncurses interface that you can use to sort and filter on certain parameters. And it can generate flamegraphs which are not quite as readable as cProfile reports but are servicable. You don't have to set it up beforehand, you can just point it at an already running PID.
pghero
https://github.com/ankane/pghero
If it turns out that the performance issues are in the database queries being made then pghero can help figure out why the queries are so inefficient. There's a nice live demo link here https://pghero.dokkuapp.com/datakick
pgadmin
https://www.pgadmin.org/
Big brother of pghero
- Sprint Candidate changed from No to Yes
- Status changed from NEW to CLOSED - COMPLETE
Also available in: Atom
PDF