All streams
Search
Write a publication
Pull to refresh
73
0

User

Send message
Вчера на javaone говорили, что реализация HotSpot JVM с большим пристрастием относится к этим указаниям, и можно быть уверенным, что она, действительно, очень быстро запустит сборку мусора.
На UNIX больше можно. Сколько точно не знаю, но там только один хип (-Xmx) можно выдавать до 3G.
Может на декстопах и не много, но на многопроцессорных серверах уже достаточно. У нас как минимум половина. Позволю себе цитату на аглийском: «So if you're asking yourself if you should care about NUMA, two examples of Sun servers with NUMA architectures are the Sun Sparc E6900 and the AMD Opteron X4600. Sun's early chip multithreading (CMT) boxes (T1000, T2000, T5120 and T5220) are not NUMA, but the later CMT T5140 and T5240 are.» Причем это далекий 2008 год.
Ну вообще они G1 рекомендуют для пртложений с кучей от 8G
Сегодня попытался прояснить этот вопрос на стенде. Четких планов пока нет. Общая идея, что фичи полезные для ентерпрайз приложений будут платными. Среди них управление jvm через окакл менеджемент тул, возможность работы jvm на кластере с терабайтами памяти и др.
На пленарном докладе они признали что выход семерки сильно затянули. Рассказывали о том что только из-за перехода сана под управление оракла они затормозили на год. Но теперь оракл инвестирует в java и разработчики jrockit и hotspots теперь будут работать вместе. Сказали что фичи будут появляться постепенно, а полный прцесс займет не меньшу 2х лет.
Вряд ли, думаю самые вкусные вещи будут платными. Не зря же они не все будут в OpenJDK коммитить.
Спасибо, проапдейтил суммари топика.
А если абсолютно круглого колеса нет, а есть в форме правильного многоугольника с большим количеством граней, что вроде бы уже и почти круг, но все таки еще немножко трясет когда едешь.

Или, например, есть колесо от камаза. Большое такое, где хочешь проедет. Но у меня-то все лишь велосипед, и получается, что ехать на этом колесе не очень удобно.

Я к тому, что если я работаю над какой-нибудь мега ультра латенси системой, где мне каждая миллисекунда дорога, то приходится задумываться, а не будет ли лучше если я вместо меганавороченного кэша буду использовать простую HashMap, с небольшой добавкой какой-нибудь LRU логики по очистке.
>> В логе можно увидеть, что происходило в JVM — обратите внимание, что использовался алгоритм Concurrent Mark Sweep Compact Collection algorithm (CMS)

Слово Compact в расшифровке CMS — лишнее. CMS как раз не выполняет Compact, за счет чего и позволяет делать только небольшие stop-the-world паузы. Но из-за этого ему приходится управлять памятью с помощью free lists, что создает некоторый дополнительный оверхед и вызывает дефрагментацию памяти.
Спасибо большое за комментарий, а то я уже расстроился, что ни одного нормального коммента нет.

Блин, опять я велосипед изобретал. -XX:+PrintGCDateStamps, конечно вещь, проставлю в ближайшем патче. Про то, что есть все кроме ротации — не согласен. Как минимум еще не хватает опции, дописывать в файл, а не перезаписывать его. А еще бы хотелось иметь возможность в UTC время писать, как мы делаем во всех остальных логах.

По поводу Azul. На работе ребят в соседнем проекте тоже жутко заинтересовал Azul, но на commodity hardware у нас в банке в продакшен выйти нет возможности. А для intel/amd x86-64 architectures, на самом деле есть только вариант с виртуальным боксе, у нас ребята им специально звонили выясняли подробности. Но виртуалки особо не перформят, я слышал, особенно когда касается обращения к памяти, так что ждем пока они на стандартное железо напрямую со своим решением выйдут. На счет совместимости вплоть до багов не уверен, но вроде JVM у них вся из себя сертифицирована.

Про Oracle JRocket Real Time JVM, к сожалению, ничего не могу сказать. Помнится работал я в одном проекте, где использовался WebLogic и, соответвстсвенно, JRocket. Ни на какие косяки не напарывались, но GC не меряли. Может потому-что там как раз все тип-топ с этим было? Хотя возможно вы имеете какое-то другое именно Real Time решение JRocket.

Information

Rating
Does not participate
Registered
Activity