Прочитав статьи ( http://rus-linux.net/lib.php?name=/MyLDP/hard/memory/memory.html http://www.es.ele.tue.nl/premadona/files/akesson01.pdf http://www.freescale.com/files/training_pdf/WBNR_FTF10_NET_F0686.pdf?lang_cd=en и http://www.freescale.com/files/training_pdf/WBNR_FTF11_NET_F0686.pdf?lang_cd=en ) у меня сложилось впечатление, что память - это основной botlneck после подгрузки данных с накопителя (PCI-e SSD). Получается, что если процесс часто не попадает в кэш (в нашем сегодняшнем мире браузеров, явы, огромных БД, компиляции и виртуализации сложно запихнуть в 8-16Мб памяти все данные приложения), то он будет сильно тормозить, при этом мы никак это не сможем увидеть (или, таки, есть средства?): он просто будет показывать 100% загрузки, тогда как реально процессор 90% времени ожидает память.
Получается, что для всех современных (т.е. «жирных») задач - всё решается кэш (и DDR4), а всё остальное - понты?
Также получается, что си и с++ быстрее явы только из-за того, что их структуры занимают меньше места в памяти, поэтому попадание в кэш происходит чаще, а использование мегатормозной памяти - реже?
P.S. И я сейчас не рассматриваю случай, когда мы занимаемся математикой, а у нас есть крутой векторный модуль в процессоре и метакомманды с чейнингом. Обычно оно не используется.