SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
Quickfix é uma implementação livre, opensource, do
protocolo Fix, utilizado no mercado financeiro.
O objetivo desta apresentação é mostrar ganhos
de performance e competitivos.
Afinal, no mercado financeiro “ns” e “ms” fazem toda diferença.

Performance Tuning para aplicação
desenvolvida em Quickfix:
RHEL 5.6 vs RHEL 5.6 + MRG
Junho de 2011
Red Hat Enterprise Linux
5.6 padrão

Red Hat Enterprise Linux
5.6 + Add-on Realtime
da Red Hat

Rodrigo Missiaggia
Platform Technical Leader
Red Hat Brasil
rmissiaggia@redhat.com
@rmissiaggia
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
O ambiente de testes,
simula o ambiente de Colocation
encontrado em uma
bolsa de valores.
Onde, o cliente tem acesso
apenas ao Servidor Cliente,
que roda suas regras de
negociação.
E não tem acesso ao servidor
de controle de risco, responsável
pelo compliance, auditoria etc.

Colocation
Servidor Cliente
(algoritmo)
1 Gbits/s
Controle de Risco
(regras de
negociação)
1 Gbits/s

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
Simulação de +894000 regras
de compra, venda,
cancelamento de negociação etc
http://www.quickfixengine.org/download.html
Software Utilizado

http://www.quickfixengine.org/download.html

Utilizado para
verificar os logs.
Configuração do Software
O ambiente de testes,
simula o ambiente de Colocation
encontrado em uma
bolsa de valores.
Onde, o cliente tem acesso
apenas ao Servidor Cliente,
que roda suas regras de
negociação.
E não tem acesso ao servidor
de controle de risco, responsável
pelo compliance, auditoria etc.

Colocation
Servidor Cliente
(algoritmo)
1 Gbits/s
Controle de Risco
(regras de
negociação)
1 Gbits/s

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

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
Cada + no gráfico representa 1ms no tempo.
Existem 93779 medições neste gráfico.
Cada medição informa, por exemplo,
que num dado milissegundo
foram executadas 9 transações.

6

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%

Cada + no gráfico representa 1ms no tempo.
65006 medições no gráfico.
Ajustes utilizados apresentados
no final da apresentação.

Tempo total de execução → 65,006 segundos
Initiator – RHEL 5.6 + Realtime
9663

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
Ajustes de Bios no Hardware + Numactl +
tunnings diversos + Add-on Realtime

13

23

0,0235%

1

24

0,0016%

Tempo total de execução → 63,731 segundos
Latência de Hardware Medida
durante o Teste com MRG
Latência média de 1.672 us
(microsegundos) ou seja,
inferior a 2 us
Durante a execução
dos testes.

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.
Resumo
-32%
Sem Tuning
Com Tuning + MRG
Tempo total de execução → 93,779 segundos
Tempo total de execução → 63,731 segundos

Se arbitrarmos que o desempenho (SLA)
esperada é igual ou superior
a 10 transações po Milissegundo
os ganhos são evidentes.

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%
Resumo
-2%
Com Tuning + Sem MRG
Com Tuning + MRG
Tempo total de execução → 65,006 segundos Tempo total de execução → 63,731 segundos

Se arbitrarmos que o
desempenho (SLA)
esperada é igual ou
superior a 10 transações
po Milissegundo os
ganhos são evidentes.

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%

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%

Mais conteúdo relacionado

Semelhante a Performance Quickfix RHEL

Teste de performance mrg realtime
Teste de performance mrg realtimeTeste de performance mrg realtime
Teste de performance mrg realtimeRodrigo Missiaggia
 
Trabalho isaac 6 sigma e lean final
Trabalho isaac 6 sigma e lean finalTrabalho isaac 6 sigma e lean final
Trabalho isaac 6 sigma e lean finalGuilherme Pereira
 
2015, March - Comgás - Transformação de Processos
2015, March - Comgás - Transformação de Processos2015, March - Comgás - Transformação de Processos
2015, March - Comgás - Transformação de ProcessosCristiane Kussuki
 
Apresentacao Vertical De Alocacao Consultor Jair Faleiros V2
Apresentacao Vertical De Alocacao   Consultor Jair Faleiros V2Apresentacao Vertical De Alocacao   Consultor Jair Faleiros V2
Apresentacao Vertical De Alocacao Consultor Jair Faleiros V2AlineCarolina
 
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital Jorge Biesczad Jr.
 
GrupoMeta - SAP FORUM 2016 - Palestra Back2Standard
GrupoMeta - SAP FORUM 2016 - Palestra Back2StandardGrupoMeta - SAP FORUM 2016 - Palestra Back2Standard
GrupoMeta - SAP FORUM 2016 - Palestra Back2StandardAntonio Andrade
 
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...Instituto Besc
 
01- Introdução a programação e modelo RAD v1.0
01- Introdução a programação e modelo RAD v1.001- Introdução a programação e modelo RAD v1.0
01- Introdução a programação e modelo RAD v1.0César Augusto Pessôa
 
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...EXCELLENCE CONSULTING
 
J Boss Rules Mgjug V2
J Boss Rules Mgjug V2J Boss Rules Mgjug V2
J Boss Rules Mgjug V2Breno Barros
 
AutomationEdge Quality Nextech
AutomationEdge Quality NextechAutomationEdge Quality Nextech
AutomationEdge Quality NextechJorge Biesczad Jr.
 

Semelhante a Performance Quickfix RHEL (20)

Teste de performance mrg realtime
Teste de performance mrg realtimeTeste de performance mrg realtime
Teste de performance mrg realtime
 
Oracleplsql
OracleplsqlOracleplsql
Oracleplsql
 
Six Sigma 2014
Six Sigma 2014Six Sigma 2014
Six Sigma 2014
 
Trabalho isaac 6 sigma e lean final
Trabalho isaac 6 sigma e lean finalTrabalho isaac 6 sigma e lean final
Trabalho isaac 6 sigma e lean final
 
2015, March - Comgás - Transformação de Processos
2015, March - Comgás - Transformação de Processos2015, March - Comgás - Transformação de Processos
2015, March - Comgás - Transformação de Processos
 
Introdução a 6sigma
Introdução a  6sigmaIntrodução a  6sigma
Introdução a 6sigma
 
Projeto sap
Projeto sapProjeto sap
Projeto sap
 
7 6 Sigma Dmaic
7 6 Sigma Dmaic7 6 Sigma Dmaic
7 6 Sigma Dmaic
 
Protheus V12
Protheus V12Protheus V12
Protheus V12
 
Apresentacao Vertical De Alocacao Consultor Jair Faleiros V2
Apresentacao Vertical De Alocacao   Consultor Jair Faleiros V2Apresentacao Vertical De Alocacao   Consultor Jair Faleiros V2
Apresentacao Vertical De Alocacao Consultor Jair Faleiros V2
 
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital
AutomationEdge Robotic Process Automation Quality Nextech Service Desk Digital
 
GrupoMeta - SAP FORUM 2016 - Palestra Back2Standard
GrupoMeta - SAP FORUM 2016 - Palestra Back2StandardGrupoMeta - SAP FORUM 2016 - Palestra Back2Standard
GrupoMeta - SAP FORUM 2016 - Palestra Back2Standard
 
Slideshare green belt
Slideshare green beltSlideshare green belt
Slideshare green belt
 
Mainframe Performance Review
Mainframe Performance ReviewMainframe Performance Review
Mainframe Performance Review
 
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...
Logística, transporte, infra-estrutura e aspectos gerais do setor de base flo...
 
01- Introdução a programação e modelo RAD v1.0
01- Introdução a programação e modelo RAD v1.001- Introdução a programação e modelo RAD v1.0
01- Introdução a programação e modelo RAD v1.0
 
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...
WCM-WORLD CLASS MAINTENANCE-BEST PRACTICES-MANUTENÇÃO CLASSE MUNDIAL - MELHOR...
 
J Boss Rules Mgjug V2
J Boss Rules Mgjug V2J Boss Rules Mgjug V2
J Boss Rules Mgjug V2
 
AutomationEdge Quality Nextech
AutomationEdge Quality NextechAutomationEdge Quality Nextech
AutomationEdge Quality Nextech
 
6 SIGMA
6 SIGMA6 SIGMA
6 SIGMA
 

Mais de 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
 
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
 
Gerenciando Serviços com Systemd
Gerenciando Serviços com SystemdGerenciando Serviços com Systemd
Gerenciando Serviços com SystemdRodrigo 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
 

Mais de Rodrigo Missiaggia (6)

Automation day red hat ansible
   Automation day red hat ansible    Automation day red hat ansible
Automation day red hat ansible
 
Red hat ceph storage customer presentation
Red hat ceph storage customer presentationRed hat ceph storage customer presentation
Red hat ceph storage customer presentation
 
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...
 
Gerenciando Serviços com Systemd
Gerenciando Serviços com SystemdGerenciando Serviços com Systemd
Gerenciando Serviços com Systemd
 
Webinar RHEV na IT Web
Webinar RHEV na IT WebWebinar RHEV na IT Web
Webinar RHEV na IT Web
 
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í...
 

Performance Quickfix RHEL

  • 1. Quickfix é uma implementação livre, opensource, do protocolo Fix, utilizado no mercado financeiro. O objetivo desta apresentação é mostrar ganhos de performance e competitivos. Afinal, no mercado financeiro “ns” e “ms” fazem toda diferença. Performance Tuning para aplicação desenvolvida em Quickfix: RHEL 5.6 vs RHEL 5.6 + MRG Junho de 2011 Red Hat Enterprise Linux 5.6 padrão Red Hat Enterprise Linux 5.6 + Add-on Realtime da Red Hat Rodrigo Missiaggia Platform Technical Leader Red Hat Brasil rmissiaggia@redhat.com @rmissiaggia
  • 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 O ambiente de testes, simula o ambiente de Colocation encontrado em uma bolsa de valores. Onde, o cliente tem acesso apenas ao Servidor Cliente, que roda suas regras de negociação. E não tem acesso ao servidor de controle de risco, responsável pelo compliance, auditoria etc. Colocation Servidor Cliente (algoritmo) 1 Gbits/s Controle de Risco (regras de negociação) 1 Gbits/s 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 Simulação de +894000 regras de compra, venda, cancelamento de negociação etc http://www.quickfixengine.org/download.html
  • 7. Configuração do Software O ambiente de testes, simula o ambiente de Colocation encontrado em uma bolsa de valores. Onde, o cliente tem acesso apenas ao Servidor Cliente, que roda suas regras de negociação. E não tem acesso ao servidor de controle de risco, responsável pelo compliance, auditoria etc. Colocation Servidor Cliente (algoritmo) 1 Gbits/s Controle de Risco (regras de negociação) 1 Gbits/s 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 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 Cada + no gráfico representa 1ms no tempo. Existem 93779 medições neste gráfico. Cada medição informa, por exemplo, que num dado milissegundo foram executadas 9 transações. 6 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% Cada + no gráfico representa 1ms no tempo. 65006 medições no gráfico. Ajustes utilizados apresentados no final da apresentação. Tempo total de execução → 65,006 segundos
  • 10. Initiator – RHEL 5.6 + Realtime 9663 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 Ajustes de Bios no Hardware + Numactl + tunnings diversos + Add-on Realtime 13 23 0,0235% 1 24 0,0016% Tempo total de execução → 63,731 segundos
  • 11. Latência de Hardware Medida durante o Teste com MRG Latência média de 1.672 us (microsegundos) ou seja, inferior a 2 us Durante a execução dos testes. 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.
  • 12. Resumo -32% Sem Tuning Com Tuning + MRG Tempo total de execução → 93,779 segundos Tempo total de execução → 63,731 segundos Se arbitrarmos que o desempenho (SLA) esperada é igual ou superior a 10 transações po Milissegundo os ganhos são evidentes. 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%
  • 13. Resumo -2% Com Tuning + Sem MRG Com Tuning + MRG Tempo total de execução → 65,006 segundos Tempo total de execução → 63,731 segundos Se arbitrarmos que o desempenho (SLA) esperada é igual ou superior a 10 transações po Milissegundo os ganhos são evidentes. 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% 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%