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
-------------------------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.