GET /api/v2/video/1056
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "EuroPython 2011", "language": "English", "slug": "debugging-and-profiling-techniques", "speakers": [ "Giovanni Bajo" ], "tags": [ "cpython", "debugging", "design", "memory", "performance", "profiling", "python," ], "id": 1056, "state": 1, "title": "Debugging and profiling techniques", "summary": "[EuroPython 2011] Giovanni Bajo - 22 June 2011 in \"Track Spaghetti\"\n\n", "description": "This talk will give on overview over some common problems related to profiling\nand debugging CPython applications (especially desktop-based ones).\n\nThe following subjects will be covered:\n\n * Debugging of memory/resource leaks (circular references, **del**, weakref, garbage collector, etc.). We will show in details how the memory management of Python objects work and we will show a few tricks to track memory leaks\n * Python code profiling (profile/hotshots/cProfile, design of small tests, etc.). We will show how to measure, profile, and analyse an application to spot performance problems and solve them.\n * Post-mortem step-by-step debugging of C/C++ extension under Windows. We will show how to setup Visual Studio for debugging, how to see a traceback in case of an unexpected segfault, and how to further debug and solve the crash.\n\nThis talk is aimed at intermediate Python programmers, who have already\ndeveloped non-trivial Python applications but have never \"jumped through\" the\ninterpreter abstraction layer. If you feel a little lost when you see a\nsegfault from a Python program or you don't have a clear idea how memory is\ncollected in Python, this talk is perfect for you.\n\n", "quality_notes": "", "copyright_text": "Standard YouTube License", "embed": "<object width=\"640\" height=\"390\"><param name=\"movie\" value=\";hl=en_US\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\";hl=en_US\" type=\"application/x-shockwave-flash\" width=\"640\" height=\"390\" allowscriptaccess=\"always\" allowfullscreen=\"true\"></embed></object>", "thumbnail_url": "", "duration": null, "video_ogv_length": null, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": null, "video_mp4_download_only": false, "video_webm_length": null, "video_webm_url": null, "video_webm_download_only": false, "video_flv_length": null, "video_flv_url": null, "video_flv_download_only": false, "source_url": "", "whiteboard": "", "recorded": "2011-07-20", "added": "2012-08-30T21:02:18", "updated": "2014-04-08T20:28:27.763" }