On Fri, Aug 30, 2013 at 03:21:47PM -0700, Stas Malyshev wrote:
> Hi!
>
> > We got a performance win from exactly this at Facebook. We have some
> > extensions in HHVM to autoload that allowed us to remove almost all
> > our *_once calls.
>
> But autoloading does not remove require - you still have to load the
> files. Only thing that can be removed is a non-loading require. Is it
> that frequent that it had significant performance impact (given that
> with opcode caching non-loading require is pretty much a couple of hash
> lookups)?
For us it saved unnecessary loading requires due to transitive module
dependencies, as well. I'd suspect it is unlikely to matter in nearly
the same way on smaller codebases, though.
-Jordan