]> granicus.if.org Git - php/commitdiff
- Show GC statistics if GC benchmarking is enabled.
authorDerick Rethans <derick@php.net>
Thu, 24 Jan 2008 10:41:52 +0000 (10:41 +0000)
committerDerick Rethans <derick@php.net>
Thu, 24 Jan 2008 10:41:52 +0000 (10:41 +0000)
#- Discussed this with Dmitry.

Zend/zend.c

index 18ef490c23cb38189e75a13bf46efb927ac15f37..9bc62311ab42c692c704148d420d501ef4ded940 100644 (file)
@@ -1398,6 +1398,20 @@ void zend_deactivate(TSRMLS_D) /* {{{ */
        }
 #endif
 
+#if GC_BENCH
+       printf("GC Statistics\n");
+       printf("-------------\n");
+       printf("Runs:               %d\n", GC_G(gc_runs));
+       printf("Collected:          %d\n", GC_G(collected));
+       printf("Root buffer length: %d\n", GC_G(root_buf_length));
+       printf("Root buffer peak:   %d\n\n", GC_G(root_buf_peak));
+       printf("      Possible            Remove from  Marked\n");
+       printf("        Root    Buffered     buffer     grey\n");
+       printf("      --------  --------  -----------  ------\n");
+       printf("ZVAL  %8d  %8d  %9d  %8d\n", GC_G(zval_possible_root), GC_G(zval_buffered), GC_G(zval_remove_from_buffer), GC_G(zval_marked_grey));
+       printf("ZOBJ  %8d  %8d  %9d  %8d\n", GC_G(zobj_possible_root), GC_G(zobj_buffered), GC_G(zobj_remove_from_buffer), GC_G(zobj_marked_grey));
+#endif
+
        zend_try {
                zend_ini_deactivate(TSRMLS_C);
        } zend_end_try();