Complex Python programs can be rather difficult to debug when hung. Finding out why a 500k lines process is completely stuck can be a daunting task, especially since PDB can't be attached to the stuck process in order to display rudimentary details such as local/global variables, stack traces and more. However, this can be mitigated greatly by tools such as GDB and strace. This talk will focus on such methods that will surely help you debug such programs.
Slides available here: http://il.pycon.org/2016/static/sessions/john-schwarz.pdf