Xdebug Performance Boost

Sebastian Bergmann » 16 October 2007 » in PHPUnit » 4 Comments

Derick recently committed a patch that improves the performance of code coverage data collection in Xdebug.

Xdebug 2.0.0:
  Workflow:
    ezcWorkflowDefinitionStorageXmlTest:    ..............................................
    ezcWorkflowExecutionTest:               .................................................
    ezcWorkflowTest:                        .....................
    ezcWorkflowNodeTest:                    .....................
    ezcWorkflowConditionTest:               .........................
    ezcWorkflowVisitorVisualizationTest:    .................
  WorkflowDatabaseTiein:
    ezcWorkflowDatabaseTieinDefinitionTest: ..............
    ezcWorkflowDatabaseTieinExecutionTest:  ....
  WorkflowEventLogTiein:
    ezcWorkflowEventLogTieinListenerTest:   ......................

Time: 02:15


OK (219 tests)
Xdebug 2.0.1-dev:
  Workflow:
    ezcWorkflowDefinitionStorageXmlTest:    ..............................................
    ezcWorkflowExecutionTest:               .................................................
    ezcWorkflowTest:                        .....................
    ezcWorkflowNodeTest:                    .....................
    ezcWorkflowConditionTest:               .........................
    ezcWorkflowVisitorVisualizationTest:    .................
  WorkflowDatabaseTiein:
    ezcWorkflowDatabaseTieinDefinitionTest: ..............
    ezcWorkflowDatabaseTieinExecutionTest:  ....
  WorkflowEventLogTiein:
    ezcWorkflowEventLogTieinListenerTest:   ......................

Time: 12 seconds


OK (219 tests)
This makes PHPUnit's code coverage functionality so much more practical to use.

Update: Xdebug 2.0.1 has been released.
Defined tags for this entry: , , ,

Trackback specific URI for this entry

4 Comments to "Xdebug Performance Boost"

Display comments as (Linear | Threaded)
  1. Sebastian
    17/10/2007 at 11:34 Permalink
    This performance boost is just amazing!

    Reply

  2. Jonathan
    18/10/2007 at 22:30 Permalink
    How can I acquire this patch?

    Thanks!

    Reply

  3. Sebastian Bergmann
    19/10/2007 at 04:48 Permalink
    It is in Xdebug's CVS repository.

    Reply

  4. Jonathan
    19/10/2007 at 19:36 Permalink
    Thanks. I was hoping it was just a patch to 2.0.0, since I'm having problems with 2.1.0. Is that the case? I don't know my way around the xdebug CVS repo very well... is there a branch that contains 2.0.0 plus this patch?

    Thanks again! this could be a lifesaver if the performance boost is as much as your example indicates.

    Reply

2 Trackbacks to "Xdebug Performance Boost"

  1. Sebastian Bergmann 21/10/2007 at 23:11
    Now that collecting code coverage information is not slow anymore (as of Xdebug 2.0.1), PHPUnit's report generation code (PHPUnit_Util_Report_*) has become a bottleneck. The image above shows the profile of PHPUnit's report generation code at revi
  2. Sebastian Bergmann 27/11/2008 at 10:40
    Some of PHPUnit features come with the cost of a performance penality. This posting explores the effect of the --no-syntax-check, $backupGlobals = FALSE;, and --coverage-html options. Syntax Check: disabled, $GLOBALS Backup: disabled, Code Coverage: disa

Add Comment


To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Submitted comments will be subject to moderation before being displayed.