Re: which pages of the file are in the cache
site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Terry, -- Terry _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... On Aug 18, 2009, at 10:53 AM, Joel Reymont wrote: It's actually my understanding that the issue is one of having lots of static constructors which are not precomputed, What is a non-precomputed static constructor and what is a precomputed one? Some compilers also support precomputing the post-constructed value of static class instances, such that the class starts out initialized, rather than having to call the constructor at runtime, which costs compile time but saves start time. If you have a lot of static or global constructors, this can cause considerable overhead constructing things before your program actually starts running. You can find most cases where this might be an issue with -Wglobal-constructors. Based on your optimization level, you will have two options that might be on or off with regard to constructors; one is -fno-elide- constructors, which is my understanding is the case witho no specific optimization enabled. If this setting is in play, then g++ will always create a temporary and use a copy constructor to initialize objects of the same type. The other is the inlining options, which can greatly impact recursive templates. PS: Hopefully, you don't use exceptions or rtti, and can turn them off; otherwise they also cause a lot of overhead. The dwarf stuff that is used for exception unwinding is pretty heavy weight. This email sent to site_archiver@lists.apple.com
participants (1)
-
Terry Lambert