| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Java performance |
| Автор: Andy_L20066 25.11.2009, 18:35 |
| привет, есть такой вопрос: вот хочу посмотреть на перформанс Java 5 и Java 6, но в своей IDE. Вот только не знаю как. Может кто делал подобное. Ну, можно написать какую-то прогу, запустить ее на 5ой и 6й версиях, но что должна делать прога чтоб действительно можно видеть различия в перформансе? |
| Автор: Temdegon 25.11.2009, 20:48 |
| Кстате, очень интересная тема! Самому писать такие тесты не оч хорошая идея, ведь java это не Си, тут же и GC, JIT и HotSwap могут сильно повлиять на обьективность результата. Много лет назад, когда возился с J2ME, мне попадался такой jar, который тестировал производительность java-платформы на мобильном телефоне - операции с павающей точкой, скорость отрисовки и т.д, а потом выводил результат. Хотелось бы что-то подобное для десктопной JRE. Мне очень хотелось бы сравнить скорость разных версий JRE, под линукс, винду, мак, на системе с одним\двумя ядрами. Ну и потом увидеть какую-то сводную табличку. Ну и вообще, особо интересно сравнивать не Java 5 и Java 6, а JRE от Sun с JRE других производителей, на пример JRE от IBM. |
| Автор: Temdegon 25.11.2009, 21:05 |
| Еще мне хотелось бы поэкспериментировать java-компиляторами. В разделе IDE целая ветка-опрос есть про компиляторы, и вроде как в них есть смысл. Но нужно найти какую-то универсальную прогу, для тестирования производительности, что бы можно было легко сравнить результаты работы разных компиляторов. |
| Автор: COVD 26.11.2009, 15:35 |
| Скорость компилятора влияет на скорость разработки и, следовательно, на доходы разработчика? Cкорость JRE влияет на затраты на оборудование и, следовательно, на доходы компании? |
| Автор: kamre 26.11.2009, 16:34 | ||
А разве Java-компиляторы генерируют существенно разный байткод для одно и того же исходника? Например, в Eclipse JDT свой компилятор (ему JDK не нужен), он чем-то сильно отличается по итоговому байткоду от компилятора в JDK? |
| Автор: Temdegon 26.11.2009, 17:07 | ||
Ну вот это и хотелось бы проверить. Разница может быть не существенная, а может быть огромная. Вот взять на пример линуксовый gcc. Можно компилить с флагами оптимизации по дефолту, а можно включить -O3 и результат будет совсем другим. На работе товарищ пишет прогу автосоставления расписания. Работает она достаточно долго. Так вот, только флагами компиляции удалось уменьшить время выполнения программы более чем в два раза. Если куча сравнений разных сишных компиляторов, и результат их работы очень-очень отличается. Не думаю, что с компиляторами байткода будет такая же картина. Но если разница все-таки есть, то хотелось бы это знать |
| Автор: serger 26.11.2009, 17:11 | ||
Исходя из особенностей java, в данном случае важнее параметры запуска виртуальной машины. Напр., сборщик мусора и его параметры. |
| Автор: Andy_L20066 26.11.2009, 17:26 |
| Temdegon, тоже хотелось бы сравнить JRE от разных производителей, но как бы пока цель другая... Наверное придется согласится с тем что написал LSD вначале... поскольку что-то ничего в голову больше не приходит... . Возьму апликацию с которой работаю, поексперементирую Добавлено через 7 минут и 26 секунд Sun к примеру использует тулзу SPECjbb2005 (http://www.spec.org/jbb2005/) для тестирования server-side Java, ну можно найти кучу уже готовых результатов улучшения перформенса для Java 6 по сравнению из Java 5 здесь http://java.sun.com/performance/reference/whitepapers/6_performance.html |
| Автор: jk1 13.12.2009, 16:38 |
| Вам прямая дорога к профайлеру: http://habrahabr.ru/blogs/java/61857/ Для тюнинга сборщика мусора можете воспользоваться вот этой статьей: http://java.sun.com/docs/hotspot/gc5.0/gc_tuning_5.html |