RE: Significant Performance Hit on Recursive Custom Tags?
> If you're running on CFMX, however, I'd look into wrapping > the functionality in a CFC or UDF instead of a custom tag though. > Functions are better suited to recusion, if you ask me, and > they're probably a bit more performant, but that's just a guess. In CF 5, UDFs performed much better than analogous custom tags. However, I haven't been able to detect any performance difference with CFMX 6.1. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ Fig Leaf Software provides the highest caliber vendor-authorized instruction at our training centers in Washington DC, Atlanta, Chicago, Baltimore, Northern Virginia, or on-site at your location. Visit http://training.figleaf.com/ for more information! ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229960 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
Re: Significant Performance Hit on Recursive Custom Tags?
Yeah, you have to have both enabled. On 1/18/06, Baz <[EMAIL PROTECTED]> wrote: > Barney, > > > if you have execution times enabled in the debugging output > > That's only if you have debugging enabled right? > > Baz > -- Barney Boisvert [EMAIL PROTECTED] 360.319.6145 http://www.barneyb.com/ Got Gmail? I have 100 invites. ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229956 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
RE: Significant Performance Hit on Recursive Custom Tags?
Barney, > if you have execution times enabled in the debugging output That's only if you have debugging enabled right? Baz ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229954 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
Re: Significant Performance Hit on Recursive Custom Tags?
> Tags > maintain a lot of references (the caller chain, the tag nesting chain, etc) > not maintained by functions and so forth. UDFs and CFC methods maintain all of this as well, if you have execution times enabled in the debugging output, but they don't expose it to the request in process. Kind of off the topic now, but if you've got more than a small handful of UDF/method calls in your app, make sure you've got the execution times section of the debugging output disabled, or you'll see a HUGE decrease in performance. Like with 100 calls you'll be measuring the decrease in full seconds. If that's disabled, then none of it's maintained, and things should be lickety-split. cheers, barneyb On 1/18/06, Jim Davis <[EMAIL PROTECTED]> wrote: > I agree with Barney here with one reminder: remember that you can put > functions inside custom tags. Not many people seem to remember that. > > I've found that most recursive tags could be remodeled quite easily with > internal recursive functions. A function in a tag is contained within it - > there's no exposure to the rest of the template or really any downside that > I can see. > > I've done no testing to back up the claim but I would say that recursive > functions would be much faster/less-resource-intensive that tags. Tags > maintain a lot of references (the caller chain, the tag nesting chain, etc) > not maintained by functions and so forth. > > Jim Davis > -- Barney Boisvert [EMAIL PROTECTED] 360.319.6145 http://www.barneyb.com/ Got Gmail? I have 100 invites. ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229949 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
RE: Significant Performance Hit on Recursive Custom Tags?
> -Original Message- > From: Barney Boisvert [mailto:[EMAIL PROTECTED] > Sent: Wednesday, January 18, 2006 5:18 PM > To: CF-Talk > Subject: Re: Significant Performance Hit on Recursive Custom Tags? > > There is some overhead for making a custom tag call, so if you have > recursion (or iteration) across a call, you'll have to pay that > overhead each time. I'd say it's nothing to worry about until you > notice it as a problem when you're doing load testing. > > If you're running on CFMX, however, I'd look into wrapping the > functionality in a CFC or UDF instead of a custom tag though. > Functions are better suited to recusion, if you ask me, and they're > probably a bit more performant, but that's just a guess. I agree with Barney here with one reminder: remember that you can put functions inside custom tags. Not many people seem to remember that. I've found that most recursive tags could be remodeled quite easily with internal recursive functions. A function in a tag is contained within it - there's no exposure to the rest of the template or really any downside that I can see. I've done no testing to back up the claim but I would say that recursive functions would be much faster/less-resource-intensive that tags. Tags maintain a lot of references (the caller chain, the tag nesting chain, etc) not maintained by functions and so forth. Jim Davis ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229947 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
Re: Significant Performance Hit on Recursive Custom Tags?
There is some overhead for making a custom tag call, so if you have recursion (or iteration) across a call, you'll have to pay that overhead each time. I'd say it's nothing to worry about until you notice it as a problem when you're doing load testing. If you're running on CFMX, however, I'd look into wrapping the functionality in a CFC or UDF instead of a custom tag though. Functions are better suited to recusion, if you ask me, and they're probably a bit more performant, but that's just a guess. cheers, barneyb On 1/18/06, Ian Skinner <[EMAIL PROTECTED]> wrote: > Just curious, is there a significant (aka quite noticeable) performance hit > when using recursive custom tags? I define recursive as being same tag called > within itself. > > I would presume it would depend on the performance of the tag in question as > well as its penchant to create endless recursion; which definitely has > performance implications, oh HOW I know it has performance implications. IE, > this is a great way to bring a server to a screeching halt! > > > -- > Ian Skinner -- Barney Boisvert [EMAIL PROTECTED] 360.319.6145 http://www.barneyb.com/ Got Gmail? I have 100 invites. ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229941 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
RE: Significant Performance Hit on Recursive Custom Tags?
Just curious, is there a significant (aka quite noticeable) performance hit when using recursive custom tags? I define recursive as being same tag called within itself. I would presume it would depend on the performance of the tag in question as well as its penchant to create endless recursion; which definitely has performance implications, oh HOW I know it has performance implications. IE, this is a great way to bring a server to a screeching halt! -- Ian Skinner Web Programmer BloodSource www.BloodSource.org Sacramento, CA âââ¬ââ â1â â âââ¼â⤠â â â âââ´ââ "C code. C code run. Run code run. Please!" - Cynthia Dunning ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229938 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54
Significant Performance Hit on Recursive Custom Tags?
Just curious, is there a significant (aka quite noticeable) performance hit when using recursive custom tags? I define recursive as being same tag called within itself. ~| Message: http://www.houseoffusion.com/lists.cfm/link=i:4:229936 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54