Summary: | ASTERISK-24974: Astobj2: Allow reference debugging to be enabled/disabled by config. | ||
Reporter: | Corey Farrell (coreyfarrell) | Labels: | |
Date Opened: | 2015-04-17 14:58:05 | Date Closed: | 2015-04-28 06:44:09 |
Priority: | Minor | Regression? | |
Status: | Closed/Complete | Components: | Core/AstMM |
Versions: | SVN | Frequency of Occurrence | |
Related Issues: | |||
Environment: | Attachments: | ||
Description: | This patch has rippled out from the original goal of getting better error messages from {{INTERNAL_OBJ}}. I found that providing only a REF_DEBUG version of __ao2_ref and __ao2_alloc resulted in faster performance, so I've expanded this to all code with REF_DEBUG dual ABI. REF_DEBUG no longer has an effect on ABI, it is only used to set reference debugging to enabled by default. Reference debugging can be controlled in asterisk.conf, refdebug=yes|no in the options section.
Test runs of {{/main/astobj2/perf}}: ||Branch||Runtimes (ms)||Average|| |{{master}}|54133, 54045, 53753, 53731, 53692|53870| |{{patch4}}|53585, 53353, 53216, 53258, 53264|53335| |{{patch5}}|52455, 52537, 52557, 52663, 52689|52580| All test runs were done on my Linux Mint 17 workstation, with reference debugging disabled. I watched TV during each run to ensure I wouldn't do anything to effect system load. patch4 is the original scope of changes to __ao2_ref and __ao2_alloc, INTERNAL_OBJ and is_ao2_object. patch5 is the full removal of REF_DEBUG dual ABI. | ||
Comments: |