SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
Rodrigo Missiaggia
Platform Technical Leader
Red Hat Brasil
rmissiaggia@redhat.com
@rmissiaggia
Performance Tuning para aplicação
desenvolvida em Quickfix:
RHEL 5.6 vs RHEL 5.6 + MRG
Junho de 2011
Apresentação
● Objetivo do “Performance Tuning”
● Ambiente de Testes
● Software Utilizado
● Configuração do Software
● Latência medida do Hardware Dell R710
● Resumo dos Ganhos Obtidos
Objetivo do “Performance Tuning”
● Atingir o “comportamento desejado”. Neste caso
o comportamento desejado é:
“Baixa Latência, previsibilidade na
entrega dos dados e transações”
Ambiente de Testes
Servidor Cliente
(algoritmo)
Controle de Risco
(regras de
negociação)
1 Gbits/s
1 Gbits/s
Colocation R710
2 x x5570
24GB de RAM
R910
4 x E7540
128 GB de RAM
Software Utilizado
●Aplicação em C++ → “tradeclient” (desenvolvida com
Quickfix 1.3.3 e Fix versão 4.2)
● Simulando a execução de +894000 transações
http://www.quickfixengine.org/download.html
Software Utilizado
http://www.quickfixengine.org/download.html
Configuração do Software
Servidor Cliente
(algoritmo)
Controle de Risco
(regras de
negociação)
1 Gbits/s
1 Gbits/s
Colocation
R710
2 x x5570
24GB de RAM
RHEL 5.6
Initiator
R910
4 x E7540
128 GB de RAM
RHEL 6.
Acceptor
Initiator – RHEL 5.6 sem Tuning
2743 6 2,9250%
6078 7 6,4812%
11041 8 11,7734%
17948 9 19,1386%
23495 10 25,0536%
17698 11 18,8720%
7360 12 7,8482%
2637 13 2,8119%
817 14 0,8712%
833 15 0,8883%
1149 16 1,2252%
Tempo total de execução → 93,779 segundos
Initiator – RHEL 5.6 ajustando
3 7 0,0046%
1 8 0,0015%
4 9 0,0062%
4 10 0,0062%
6 11 0,0092%
235 12 0,3615%
12609 13 19,3967%
35453 14 54,5380%
13454 15 20,6966%
947 16 1,4568%
130 17 0,2000%
Tempo total de execução → 65,006 segundos
Initiator – RHEL 5.6 + Realtime
Tempo total de execução → 63,731 segundos
9663 13 15,1622%
30269 14 47,4949%
14982 15 23,5082%
5360 16 8,4103%
1151 17 1,8060%
361 18 0,5664%
629 19 0,9870%
712 20 1,1172%
439 21 0,6888%
113 22 0,1773%
15 23 0,0235%
1 24 0,0016%Ajustes de Bios no Hardware + Numactl +
tunnings diversos + Realtime
Latência de Hardware Medida
durante o Teste com MRG
Medição de latência utilizando o comando →
cyclictest -t1 -n -p99 -v | oscilloscope -s1000 >/dev/null
Obs: sem o Kernel Realtime
Não é possível medir a latência
com esta precisão.
Latência média de 1.672 us
(microsegundos) ou seja,
inferior a 2 us
Durante a execução
dos testes.
Resumo
1-9 transações por Ms 41,49%
10-15 trasações por Ms 56,35%
16-26 transações por Ms 2,17%
100,00%
1-9 transações por Ms 0,000031%
10-15 trasações por Ms 86,22%
16-26 transações por Ms 13,78%
100,00%
Sem Tuning
Tempo total de execução → 93,779 segundos
Com Tuning + MRG
Tempo total de execução → 63,731 segundos
-32%
Resumo
1-9 transações por Ms 0,000031%
10-15 trasações por Ms 86,22%
16-26 transações por Ms 13,78%
100,00%
Com Tuning + MRG
Tempo total de execução → 63,731 segundos
1-9 transações por Ms 0,03%
10-15 trasações por Ms 96,46%
16-26 transações por Ms 3,51%
100,00%
Com Tuning + Sem MRG
Tempo total de execução → 65,006 segundos
-2%

Mais conteúdo relacionado

Destaque

Performance Tuning para o mercado financeiro
Performance Tuning para o mercado financeiroPerformance Tuning para o mercado financeiro
Performance Tuning para o mercado financeiroRodrigo Missiaggia
 
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...Rodrigo Missiaggia
 
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...Rodrigo Missiaggia
 
Red hat ceph storage customer presentation
Red hat ceph storage customer presentationRed hat ceph storage customer presentation
Red hat ceph storage customer presentationRodrigo Missiaggia
 
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?Na Jornada da Virtualização para as Nuvens, como mantemos o controle?
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?Rodrigo Missiaggia
 
Gerenciando Serviços com Systemd
Gerenciando Serviços com SystemdGerenciando Serviços com Systemd
Gerenciando Serviços com SystemdRodrigo Missiaggia
 

Destaque (9)

Performance Tuning para o mercado financeiro
Performance Tuning para o mercado financeiroPerformance Tuning para o mercado financeiro
Performance Tuning para o mercado financeiro
 
Webinar RHEV na IT Web
Webinar RHEV na IT WebWebinar RHEV na IT Web
Webinar RHEV na IT Web
 
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...
O FUTURO DE CLOUD COM IaaS OPEN SOURCE: Construa sua Nuvem Privada com OpenSt...
 
Performance tuning
Performance tuningPerformance tuning
Performance tuning
 
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...
Red Hat Enterprise Linux 6 - A Plataforma que transforma "Features" em Benefí...
 
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 7 Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 7
 
Red hat ceph storage customer presentation
Red hat ceph storage customer presentationRed hat ceph storage customer presentation
Red hat ceph storage customer presentation
 
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?Na Jornada da Virtualização para as Nuvens, como mantemos o controle?
Na Jornada da Virtualização para as Nuvens, como mantemos o controle?
 
Gerenciando Serviços com Systemd
Gerenciando Serviços com SystemdGerenciando Serviços com Systemd
Gerenciando Serviços com Systemd
 

Semelhante a Performance Tuning Quickfix RHEL 5.6 vs 5.6 + MRG

Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Rodrigo Immaginario
 
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...André Curvello
 
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...tdc-globalcode
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!Intel Software Brasil
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!Luciano Palma
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Intel Software Brasil
 
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGoogle AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGustavo Concon
 
sys._current_frames(), Radiografando seu software em tempo real
 sys._current_frames(), Radiografando seu software em tempo real sys._current_frames(), Radiografando seu software em tempo real
sys._current_frames(), Radiografando seu software em tempo realLeonardo Rochael Almeida
 
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...Ricardo Olsen
 
Monitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELMonitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELAlessandro Silva
 
Estratégias de escablabilidade para serviços online
Estratégias de escablabilidade para serviços onlineEstratégias de escablabilidade para serviços online
Estratégias de escablabilidade para serviços onlineGuto Xavier
 
TDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDataTDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDatatdc-globalcode
 
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan SeidlTI Safe
 
Solution Sistemas - Empresa e Representação
Solution Sistemas - Empresa e RepresentaçãoSolution Sistemas - Empresa e Representação
Solution Sistemas - Empresa e RepresentaçãoFelipe Fonseca Rocha
 
Strider CD - Deploy Contínuo com JavaScript
Strider CD -  Deploy Contínuo com JavaScriptStrider CD -  Deploy Contínuo com JavaScript
Strider CD - Deploy Contínuo com JavaScriptTaller Negócio Digitais
 
Modelo de Atendimento
Modelo de AtendimentoModelo de Atendimento
Modelo de AtendimentoPedro388
 

Semelhante a Performance Tuning Quickfix RHEL 5.6 vs 5.6 + MRG (20)

Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
 
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
 
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we h...
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
 
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGoogle AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
 
sys._current_frames(), Radiografando seu software em tempo real
 sys._current_frames(), Radiografando seu software em tempo real sys._current_frames(), Radiografando seu software em tempo real
sys._current_frames(), Radiografando seu software em tempo real
 
Mainframe Performance Review
Mainframe Performance ReviewMainframe Performance Review
Mainframe Performance Review
 
Putting a-heat-with-thermostat
Putting a-heat-with-thermostatPutting a-heat-with-thermostat
Putting a-heat-with-thermostat
 
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...
Aplicação de Conceitos de IHM de Alta Performance e Consciência Situacional n...
 
Secomp 2018 - DO Ruby ao Elixir
Secomp 2018 - DO Ruby ao ElixirSecomp 2018 - DO Ruby ao Elixir
Secomp 2018 - DO Ruby ao Elixir
 
Monitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELMonitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHEL
 
Estratégias de escablabilidade para serviços online
Estratégias de escablabilidade para serviços onlineEstratégias de escablabilidade para serviços online
Estratégias de escablabilidade para serviços online
 
TDC2016SP - Trilha BigData
TDC2016SP - Trilha BigDataTDC2016SP - Trilha BigData
TDC2016SP - Trilha BigData
 
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
 
Solution Sistemas - Empresa e Representação
Solution Sistemas - Empresa e RepresentaçãoSolution Sistemas - Empresa e Representação
Solution Sistemas - Empresa e Representação
 
Strider CD - Deploy Contínuo com JavaScript
Strider CD -  Deploy Contínuo com JavaScriptStrider CD -  Deploy Contínuo com JavaScript
Strider CD - Deploy Contínuo com JavaScript
 
Modelo de Atendimento
Modelo de AtendimentoModelo de Atendimento
Modelo de Atendimento
 
SRE passo a passo
SRE passo a passoSRE passo a passo
SRE passo a passo
 

Performance Tuning Quickfix RHEL 5.6 vs 5.6 + MRG

  • 1. Rodrigo Missiaggia Platform Technical Leader Red Hat Brasil rmissiaggia@redhat.com @rmissiaggia Performance Tuning para aplicação desenvolvida em Quickfix: RHEL 5.6 vs RHEL 5.6 + MRG Junho de 2011
  • 2. Apresentação ● Objetivo do “Performance Tuning” ● Ambiente de Testes ● Software Utilizado ● Configuração do Software ● Latência medida do Hardware Dell R710 ● Resumo dos Ganhos Obtidos
  • 3. Objetivo do “Performance Tuning” ● Atingir o “comportamento desejado”. Neste caso o comportamento desejado é: “Baixa Latência, previsibilidade na entrega dos dados e transações”
  • 4. Ambiente de Testes Servidor Cliente (algoritmo) Controle de Risco (regras de negociação) 1 Gbits/s 1 Gbits/s Colocation R710 2 x x5570 24GB de RAM R910 4 x E7540 128 GB de RAM
  • 5. Software Utilizado ●Aplicação em C++ → “tradeclient” (desenvolvida com Quickfix 1.3.3 e Fix versão 4.2) ● Simulando a execução de +894000 transações http://www.quickfixengine.org/download.html
  • 7. Configuração do Software Servidor Cliente (algoritmo) Controle de Risco (regras de negociação) 1 Gbits/s 1 Gbits/s Colocation R710 2 x x5570 24GB de RAM RHEL 5.6 Initiator R910 4 x E7540 128 GB de RAM RHEL 6. Acceptor
  • 8. Initiator – RHEL 5.6 sem Tuning 2743 6 2,9250% 6078 7 6,4812% 11041 8 11,7734% 17948 9 19,1386% 23495 10 25,0536% 17698 11 18,8720% 7360 12 7,8482% 2637 13 2,8119% 817 14 0,8712% 833 15 0,8883% 1149 16 1,2252% Tempo total de execução → 93,779 segundos
  • 9. Initiator – RHEL 5.6 ajustando 3 7 0,0046% 1 8 0,0015% 4 9 0,0062% 4 10 0,0062% 6 11 0,0092% 235 12 0,3615% 12609 13 19,3967% 35453 14 54,5380% 13454 15 20,6966% 947 16 1,4568% 130 17 0,2000% Tempo total de execução → 65,006 segundos
  • 10. Initiator – RHEL 5.6 + Realtime Tempo total de execução → 63,731 segundos 9663 13 15,1622% 30269 14 47,4949% 14982 15 23,5082% 5360 16 8,4103% 1151 17 1,8060% 361 18 0,5664% 629 19 0,9870% 712 20 1,1172% 439 21 0,6888% 113 22 0,1773% 15 23 0,0235% 1 24 0,0016%Ajustes de Bios no Hardware + Numactl + tunnings diversos + Realtime
  • 11. Latência de Hardware Medida durante o Teste com MRG Medição de latência utilizando o comando → cyclictest -t1 -n -p99 -v | oscilloscope -s1000 >/dev/null Obs: sem o Kernel Realtime Não é possível medir a latência com esta precisão. Latência média de 1.672 us (microsegundos) ou seja, inferior a 2 us Durante a execução dos testes.
  • 12. Resumo 1-9 transações por Ms 41,49% 10-15 trasações por Ms 56,35% 16-26 transações por Ms 2,17% 100,00% 1-9 transações por Ms 0,000031% 10-15 trasações por Ms 86,22% 16-26 transações por Ms 13,78% 100,00% Sem Tuning Tempo total de execução → 93,779 segundos Com Tuning + MRG Tempo total de execução → 63,731 segundos -32%
  • 13. Resumo 1-9 transações por Ms 0,000031% 10-15 trasações por Ms 86,22% 16-26 transações por Ms 13,78% 100,00% Com Tuning + MRG Tempo total de execução → 63,731 segundos 1-9 transações por Ms 0,03% 10-15 trasações por Ms 96,46% 16-26 transações por Ms 3,51% 100,00% Com Tuning + Sem MRG Tempo total de execução → 65,006 segundos -2%