2013-09-27 2 views
0

мой старый нетбук (AMD C-60) при запуске приложения Синатра будет начинается в 5-7 секунд (рубин), 23-24 секунд (JRuby)рубин медленно производительность при запуске на VMware

ОС (нетбук) : 32-битный Arch Linux 3.4.62-1 i686 РАЕ (2 RAM)

мой ПК РАЗРАБОТКА (AMD A8-6600K) начинается в течение 1-2 секунд (Ruby), 12-16 секунд (JRuby)

ОС (ПК): 32-разрядная Arch Linux 3.11.1-1 i686 PAE (оперативная память 8 ГБ)

Когда я добавить VMware на моем компьютере развития, начинается 0.9-2 секунд (рубин), 7 секунд (JRuby)

OS Гость (VM-ПК): 32-разрядное Arch Linux 3.11 .1-2 i686 (1.5GB RAM)

при использовании 32-битного гостя под 64-битной VMware под (i3-3220, что должно быть во много раз быстрее, чем мой старый нетбук), он начинается в 45 -46 секунд (Рубин) и 30-37 секунд (JRuby) ..

гостевой ОС (VM-I3): 32-битный Arch Linux 3.11.1-2 i686 (1,5 ГБ ОЗУ)

Хост ОС: 64-битная Ubuntu Linux 3.8.0.19 x86_64 13.04 (2 Гб оперативной памяти, только работает Unity, VMware и гнома-терминал)

При выполнении одного сценария (генерирования 12MB данных в базе данных), производительность была нормальной:

real/user/sys 
netbook: ruby: 4:25/2:13/0:02 jruby: 13:21/11:46/0:09 
pc:  ruby: 1:39/0:31/0:05 jruby: 3:52/ 3:38/0:03 
vm-pc: ruby: 0:40/0:31/0:06 jruby: 3:25/ 3:12/0:02 
vm-i3: ruby: 1:18/0:21/0:05 jruby: 3:16/ 2:19/0:35 

конфигурация:

Ruby: using Thin web server, ruby -v 
ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux] 

JRuby: using Trinidad web server, jruby -v 
jruby 1.7.4 (1.9.3p392) 2013-05-16 2390d3b on OpenJDK Client VM 1.7.0_40-b31 +indy [linux-i386] 

Каковы возможности этой медленности запуска на vm-i3?

+1

Вы должны начать с отключения динамического вызова (активируется на JDK 1.7.0_40, но, как известно, вызывают проблемы и ухудшение производительности) ... попробуйте запустить 'jruby' с ** - Xcompile.invokedynamic = false ** – kares

+0

спасибо, он работает быстрее на скрипте '2: 17/1: 33/0: 02' и запускается быстрее, о' 6s' на моем ПК – Kokizzu

ответ

0

Проблема была на /etc/hosts файл, забыл добавить строку, содержащую LOCALHOST/имя хоста

0

Еще одна вещь, которая может замедлить рубин вниз при запуске является RubyGems модуль. Если вам не нужно загружать драгоценные камни, вы можете ускорить запуск, запустив ruby ​​с опцией --disable-gems.

Если вы позже решите, что хотите загрузить драгоценные камни, достаточно простого require 'rubygems' над линией require 'some_gem'.

Смежные вопросы