Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Pycharm debugger much slower than normal run

I am trying to use pycharm in order to debug an ironpython script. It is going poorly because pycharm is running very slowly in debug mode. I realize that we can expect some slowdown, but I am experiencing a slowdown of roughly 200x. Below are my pystone results:

Normal run:

"C:\Program Files (x86)\IronPython 2.7\ipy.exe" C:/Users/melchoir55/PycharmProjects/pystone/pystone.py
Pystone(1.1) time for 50000 passes = 0.270744
This machine benchmarks at 184676 pystones/second

Debugger:

"C:\Program Files (x86)\IronPython 2.7\ipy.exe" -X:Frames "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 3.0.1\helpers\pydev\pydevd.py" --multiproc --client 127.0.0.1 --port 52669 --file C:/Users/melchoir55/PycharmProjects/pystone/pystone.py
pydev debugger: warning: sys._current_frames is not supported in Python 2.4, it is recommended to install threadframe module
pydev debugger: warning: See http://majid.info/blog/threadframe-multithreaded-stack-frame-extraction-for-python/
pydev debugger: process 9064 is connecting

Connected to pydev debugger (build 131.339)
Pystone(1.1) time for 50000 passes = 71.5615
This machine benchmarks at 698.700 pystones/second

Anyone have any idea what might be going on here?

like image 603
melchoir55 Avatar asked Nov 01 '13 20:11

melchoir55


1 Answers

The problem was ironpython. Apparently, ipy doesn't work well with debuggers. I ran pystone again using the same debuggers(eclipse pydev, pycharm, visual studio) except this time using a regular python distribution instead of ironpython. The results were much better:

Normal run with standard python:

Pystone(1.1) time for 50000 passes = 0.462739
This machine benchmarks at 108052 pystones/second

Debug run with standard python:

pydev debugger: starting
Pystone(1.1) time for 50000 passes = 4.49224
This machine benchmarks at 11130.3 pystones/second

So it appears regular python still experiences a significant slowdown in debug mode, but nothing compared to the slowdown experienced by ironpython. If you experience this problem, you might consider dumping ironpython.

like image 158
melchoir55 Avatar answered Oct 10 '22 02:10

melchoir55