Проект FreeBSD Java®: Сравнение производительности
Введение:
В последнее время ходит много разговоров о решении компании Sun выпустить официальный порт Java для Linux. Это исследование было выполнено для того, чтобы сравнить реальную производительность порта для Linux команды Blackdown с Портом JDK® на FreeBSD.
Итоги:
Порт для Linux быстрее, чем для FreeBSD, даже когда принимается во внимание JIT. Для приложений, интенсивно работающих с графикой, все тесты FreeBSD быстрее, чем Linux, и самым быстрым из них является FreeBSD/TYA. При сравнении портов Linux и FreeBSD, каждого без JIT, FreeBSD оказывается быстрее. Мы можем сказать, что при работе на FreeBSD дизайн JIT сказывается на производительности.
Методика тестирования:
Все тесты запускались на FreeBSD 3.4-RC (Tue Dec 7 09:14:51 EST 1999) на двухпроцессорном Pentium 200 SMP со 128 мегабайтами ОЗУ. Тесты были выполнены с помощью программного обеспечения компании Pendragon Software под названием Caffeine Mark версии 3.0 выбором параметра "Run all tests locally".
Версии программного обеспечения:
Вот список программного обеспечения, использованного в этом тесте:
FreeBSD JDK 1.1.8
Blackdown's JDK 1.2.2-RC3 (under Linux emulation)
ShuJIT 0.3.13
TYA 1.5
Суммарные результаты
Тест 1 | Тест 2 | Тест 3 | Тест 4 | Тест 5 | Среднее | |
---|---|---|---|---|---|---|
Linux JDK 1.2.2/без JIT | 222 | 223 | 224 | 225 | 222 | 223 |
FreeBSD JDK 1.1.8/без JIT | 247 | 247 | 247 | 250 | 247 | 246 |
Linux JDK 1.2.2/стандартный JIT | 539 | 550 | 543 | 544 | 535 | 542 |
FreeBSD JDK 1.1.8/shujit | 373 | 376 | 369 | 374 | 373 | 373 |
FreeBSD JDK 1.1.8/TYA | 478 | 477 | 478 | 479 | 483 | 479 |
Таблица подробных результатов:
Sieve | Loop | Logic | String | Float | Method | Graphics | Images | Dialog | |
---|---|---|---|---|---|---|---|---|---|
Linux JDK 1.2.2/без JIT | 380 | 434 | 433 | 489 | 363 | 337 | 306 | 25 | 40 |
FreeBSD JDK 1.1.8/без JIT | 318 | 456 | 434 | 393 | 381 | 381 | 344 | 77 | 37 |
Linux JDK 1.2.2/стандартный JIT | 1361 | 2005 | 3354 | 872 | 1161 | 1802 | 247 | 28 | 40 |
FreeBSD JDK 1.1.8/shujit | 800 | 1566 | 2191 | 588 | 1010 | 101 | 317 | 79 | 37 |
FreeBSD JDK 1.1.8/TYA | 712 | 1467 | 2352 | 949 | 1078 | 512 | 357 | 74 | 38 |
Заключение:
С того момента, как были выполнены эти тесты, были выпущены новые версии используемого программного обеспечения. Поэтому эти тесты будут выполнены вскоре снова для определения того, повлияют ли новые версии JIT для FreeBSD на результаты. Те же самые JIT также будут использованы с Linux JDK для тестирования их влияния.
Тестер:
Эти тесты выполнил Патрик Гарделла (Patrick Gardella) patrick@freebsd.org в Декабре 1999 года.