@macumber say it is 1ms to allocate (that might be too high but is an easy number). If a function gets call 100 times that is suddenly 100ms, 1000 calls is 1000ms, and so on. It really comes down to how often a function is called and whether or not it is worth it. In this case in airLoopHVACOutdoorAirSystemAsModelObject() it probably isn't necessarily worth it. But for example, IdfObject_Impl::name() it was worth it since it is called so often.