Re: proposal for ICU tracing
Tex Texin <[email protected]>
| Newsgroups | gmane.comp.lib.icu.general |
|---|---|
| Organization | http://www.XenCraft.com XenCraft Globalization Services |
| Message-ID | <[email protected]> |
Hi, Size is also a concern and surely there is some code that is included besides the "if statement" that actually triggers the tracing. On the one hand, I debated saying anything as I am sure the developers can implement low cost tracing without much effort. On the other hand, it would seem that a long term plan should be in place as well as an assessment of user requirements for tracing, so that any overhead can be justified by the need and unnecessary overhead clearly eliminated. It's not clear to me why tracing for collation is provided but not the other api, especially if it is as low cost as indicated. If I had another hand available, I might also question whether the tracing calls should be internal to ICU or wrapped around the ICU function calls (in macros). Sometimes, you only want calls traced that are made from certain calling modules, not all modules. Turning tracing on or off in the callers, simplifies the trace analysis. (Although it can hurt you if there is a complex interaction from calls made from different callers.) I understand it is also possible to elminate the calls via filters of the trace call but then you have already suffered the performance cost of tracing unnecessary calls. food for thought (I hope) tex Andy Heninger wrote: > > Robert Buck wrote: > >>This is a proposal to add a tracing facility to ICU. > > > > And of course, may I assume that there will be some feature-on/off C preprocessor magic for those of us that do not want the runtime overhead? > > > > Yes, some configuration option to compile out the tracing stuff is > planned. But, by default, the tracing code will be present in release > builds. The overhead is a single if(boolean_variable) test at the entry > and exit of traced functions, not too bad. > > Initially, our requirement is for tracing of collation API functions. > Tracing won't be everywhere, at least not at first. And it wont be on > every low level internal function, which would indeed result in an > overhead issue. > > -- > -- Andy Heninger > [email protected] > > _______________________________________________ > icu mailing list > [email protected] > http://oss.software.ibm.com/developerworks/oss/mailman/listinfo/icu -- ------------------------------------------------------------- Tex Texin cell: +1 781 789 1898 mailto:[email protected] Xen Master http://www.i18nGuy.com XenCraft http://www.XenCraft.com Making e-Business Work Around the World -------------------------------------------------------------