
At Sun, 17 Oct 2010 19:12:01 +0200, Christopher Lux wrote:
On 10/9/2010 John Carmack of id Software wrote on his Twitter account: “@ID_AA_Carmack: It took 69 single steps to get past a BOOST_FOREACH() statement. Madness.”
This made me think again about the overhead introduced with boost foreach. Is the overhead really this large as he makes it sound? Are there heuristics to when to use foreach according to the expected iteration counts?
Without more information about what he was actually doing, it's hard to say whether his expectations are totally unrealistic or not. You can do a BOOST_FOREACH over a container rvalue; who knows if he was actually seeing the construction steps for the container or not? Who knows if he was stepping by ASM instruction? I'd say that tweet is totally inconclusive and unhelpful. -- Dave Abrahams BoostPro Computing http://www.boostpro.com