* Avi Kivity <avi@xxxxxxxxxx> wrote: > On 04/11/2010 06:52 PM, Linus Torvalds wrote: > > > >On Sun, 11 Apr 2010, Avi Kivity wrote: > >> > >> And yet Oracle and java have options to use large pages, and we know > >> google and HPC like 'em. Maybe they just haven't noticed the fundamental > >> brokenness yet. ( Add Firefox to the mix too - it too allocates in 1MB/2MB chunks. Perhaps Xorg as well. ) > > The thing is, what you are advocating is what traditional UNIX did. > > Prioritizing the special cases rather than the generic workloads. > > > > And I'm telling you, it's wrong. Traditional Unix is dead, and it's dead > > exactly _because_ it prioritized those kinds of loads. > > This is not a specialized workload. Plenty of sites are running java, > plenty of sites are running Oracle (though that won't benefit from anonymous > hugepages), and plenty of sites are running virtualization. Not everyone > does two kernel builds before breakfast. Java/virtualization/DBs, and, to a certain sense Firefox have basically become meta-kernels: they offer their own intermediate APIs to their own style of apps - and those apps generally have no direct access to the native Linux kernel. And just like the native kernel has been enjoying the benefits of 2MB pages for more than a decade, do these other entities want to enjoy similar benefits as well. Fair is fair. Like it or not, combined end-user attention/work spent in these meta-kernels is rising steadily, while apps written in raw C are becoming the exception. So IMHO we really have roughly three logical choices: 1) either we accept that the situation is the fault of our technology and subsequently we reform and modernize the Linux syscall ABIs to be more friendly to apps (offer built-in GC and perhaps JIT concepts, perhaps offer a compiler, offer a wider range of libraries with better integration, etc.) 2) or we accept the fact that the application space is shifting to the meta-kernels - and then we should agressively optimize Linux for those meta-kernels and not pretend that they are 'specialized'. They literally represent tens of thousands of applications apiece. 3) or we should continue to muddle through somewhere in the middle, hoping that the 'pure C apps' win in the end (despite 10 years of a decline) and pretend that the meta-kernels are just 'specialized' workloads. Right now we are doing 3) and i think it's delusive and a mistake. I think we should be doing 1) - but failing that we have to be honest and do 2). Thanks, Ingo -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>