Какую JVM выбрать для взлома GC? - PullRequest
12 голосов
/ 10 сентября 2011

У меня есть дизайн для алгоритма GC, который я хотел бы реализовать для JVM, чтобы позволить бенчмаркинг.

Есть ли у кого-нибудь опыт в отношении того, какая реализация позволит легко взломать, но у которой все еще есть встроенный GC, который позволил бы провести содержательное сравнение?

Отредактировано: я хочу JVM, которая имеет сборщик мусора, так как я хочу собирать статистику, используя ее, затем извлекать их GC, вставлять свою собственную и сравнивать. Я хочу, чтобы у него был хороший сборщик мусора, иначе сравнение имеет смысл, но я хочу что-то с кодом, с которым не слишком сложно работать (у HotSpot много ассемблера, что усложняет задачу)

Ответы [ 3 ]

8 голосов
/ 10 сентября 2011

Я думаю, что Maxine Research VM от Oracle Labs идеально подойдет для ваших нужд.

Цитата с первой страницы их wiki :

Обзор проекта

В эту эпоху современных управляемых языков мы требуем от наших виртуальных машин еще больше: лучшую производительностьбольше масштабируемости и поддержка новейших новых языков. Исследования и эксперименты необходимы, но уже не практичны в контексте зрелых, сложных производственных виртуальных машин, написанных на нескольких языках.

Maxine VM - это платформа следующего поколенияэто устанавливает новый стандарт производительности в этой области исследований.Он полностью написан на Java, полностью совместим с современными средами разработки Java и стандартным JDK, имеет модульную архитектуру, которая позволяет подключать альтернативные реализации подсистем, таких как GC и компиляцию, и сопровождается выделенныминструмент разработки (Maxine Inspector) для отладки и визуализации почти каждого аспекта состояния работы виртуальной машины.

Вот отличное видео, демонстрирующее утилиты для мониторинга памяти:

0 голосов
/ 10 сентября 2011

возможно вам не нужна JVM, но для тестирования вашего алгоритма будет достаточно виртуальной машины. Если вы не обязаны использовать JVM, вы можете использовать APache Harmony или я бы порекомендовал другую виртуальную машину, созданную на диссертации, под названием VmKit . Вы можете взглянуть на него и просмотреть источник

0 голосов
/ 10 сентября 2011

Мне не известно о том, что у нет встроенного GC;не большая часть Java без таковой.Почему бы не начать с OpenJDK или Harmony?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...