Tempo e Performance por Luis Carlos Orsoni

257 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
257
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Nosso propósito é triplo: enfatizar a importância da correta medição do Tempo, discorrer sobre a sua implementação Tecnológica em MainFrames IBM e sugerir o uso da Macro TIMEUSED para a Medição de Performance, de interesse aos Analistas de Performance e Planejamento de Capacidade. Com certeza, não se pretende esgotar o assunto e nem detalhar toda a intrincada interdependência dos Conceitos pertinentes. Uma pequena reflexão , antes de prosseguir:
  • Antes da apresentação dos Conceitos, vale a pena uma pausa para considerar que: Não se trata apenas de “curiosidade”, uma vez que o não sincronismo acarretará problemas. Embora possa ser ignorado pelo ser humano “comum”, não o pode ser pelas máquinas . Acreditamos que o Analista de Performance deverá saber prever as suas conseqüências .
  • As sociedades tiveram necessidade de medir a passagem do Tempo: das Estações decorreram o ano (solar), mês (lunar), dia, hora, minuto e segundo minuto (1 / 86.400 do dia “médio”). A definição inicial do segundo é insuficiente, pois a duração do dia é variável e crescente. Um definição mais precisa, como a baseada no Césio, não auxilia a sua utilização prática . Resta-nos contar com algum esquema de ajuste periódico nestes valores.
  • Bibliografia : O documento “oficial” que descreve as necessidades e a implementação de Timing Facilities em MainFrames IBM é o Manual DZ9ZR001 “ P rinciples Of Op eration”. No Capítulo 4 são apresentados estes Conceitos e sua implementação Tecnológica, como discorreremos na segunda parte deste texto. Sua leitura é fundamental para o detalhamento deste tema, o que não será feito aqui. Todos os Manuais:  IBM.
  • Esta Tabela define quando foram inseridos os Segundos “bissextos” para efetuar este ajuste, reportando os anos em que foram inseridos no primeiro semestre, no último minuto do último dia do mês de Junho , ou no último minuto do último dia de Dezembro . Em 2.00 6 foi inserido o último e 23 o. Segundo “bissexto”, isto é, o último minuto de 31 de Dezembro de 2.00 5 teve 6 1 segundos. Com a obsolescência do GMT e sua substituição pelo UTC em 1.9 72 , já há 33 segundos de diferença para o TAI=International Atomic Time.
  • Num nível bem alto, constatamos que os MainFrames IBM implementam 3 conceitos importantes: Medição do Tempo para eventos humanos : Primeiro o Interval Timer e depois o TOD= T ime O f D ay Clock e Clock Comparator. Medição do Tempo numa escala compatível com a execução das Instruções pelas CPUs, realizado pelo CPU Timer. Um mecanismo para o ajuste no Hardware.
  • Da resolução inicial em segundos do Interval Timer, nos MainFrames do Sistema /360, passou-se à resolução em Micro Segundos, representado pelo acréscimo de uma unidade, a cada MicroSegundo, no bit 51 de um contador Binário de 64 bits (128 bits, se EXTENDED). A importância deste fato é que este contador voltará a zero em 2.041, motivo pelo qual foi adicionado um byte em sua mais alta ordem, considerado pelas Instruções EXTENDED.
  • Sem pretender explicar todos os conceitos embutidos nesta Figura (cujo detalhamento, como dissemos, encontra-se no Manual POP), a mensagem aqui é que o mecanismo de “steering” automatiza o ajuste eventual dos valores de Timing. Esclarece que, para tanto, existe um Relógio Físico , incrementado por um Oscilador n o Hardware, que é ajustado pelo mecanismo de “steering” e apresentado como Relógio Básico da Máquina , de onde derivam os valores para o Relógio da LPAR = Par tição L ógica e para o VM = V irtual M achine.
  • À guisa de proposta, apresentamos a Macro TIMEUSED, detalhada no Manual IEA2A420 Authorized Services Reference Vol4 e uma sugestão de Metodologia, encontrada no Manual IEA2A621 Assembler Services Guide para a correta medição de Performance, quando se deseja uma medida precisa, ao nível de Micro Segundo, obtida com o CPU Timer. Os valores do TOD Clock não podem ser usados devido a: CPU Lógica poder entrar em Manual State ( = STOP), Prioridades de Despacho e ocorrências de Intercepts .
  • Exemplo de uso da Macro TIMEUSED: TIMEUSED STORADR=DOUBLEWD, LINKAGE=SYSTEM, CPU=MIC ou TOD Doubleword representa uma área de 8 bytes onde serão armazenados os 64 bits, indicando quantos MICrosegundos de CPU foram utilizados por esta Task, até este momento.
  • Aqui a sugestão da Metodologia que permitirá a escolha dos mais eficientes algoritmos. Os argumentos para a variação dos Tempos de CPU devem ser examinados no Capítulo 11 do Manual IEA2G233 SMF=System Management Facilities.
  • À guisa de Conclusão, queremos ressaltar: O cuidado necessário ao tratamento deste tema, devido às inúmeras variáveis interdependentes. As variações previsíveis e que necessitarão ajustes, médias de 3 passagens, etc. O reflexo , positivo, que se pode esperar no Planejamento de Capacidade.
  • Agradecemos a oportunidade, oferecida pelo CMG Brasil, de trazer este assunto e seus Conceitos à consideração dos Profissionais responsáveis pelas disciplinas de Análise de Performance e Planejamento de Capacidade. Á disposição para Perguntas e eventuais esclarecimentos adicionais, obrigado.
  • Tempo e Performance por Luis Carlos Orsoni

    1. 1. Tempo e Performance #1 = Como medir o Tempo ? #2 = Tecnologia em MainFrames #3 = Como medir Performance ?
    2. 2. Propósito: Só Curiosidade ? Faz alguma falta ? “ Cultura Inútil” ?
    3. 3. #1=Definições <ul><li>Nada, Estações, Dias, Horas </li></ul><ul><li>Segundo = Dia / (24 * 60 * 60) ? </li></ul><ul><li>Estabilidade do Césio Radioativo ? </li></ul><ul><li>Variável ? => “Bissexto” ! </li></ul>
    4. 6. #2=Implementação <ul><li>Interval Timer => TOD Clock </li></ul><ul><li>TOD + Clock Comparator (Humanos!) </li></ul><ul><li>CPU Timer </li></ul><ul><li>Steering </li></ul>
    5. 9. #3=Medições <ul><li>Macro TIMEUSED </li></ul><ul><li>“ Metodologia” </li></ul><ul><li>Exemplo </li></ul><ul><li>Resultados Numéricos </li></ul>
    6. 12. Conclusões : <ul><li>TIMEUSED permite Medir Performance </li></ul><ul><li>Escala de MicroSegundos </li></ul><ul><li>Decidir qual o melhor Algoritmo </li></ul><ul><li>Reflete no Plan ejamento de Cap acidade </li></ul>
    7. 13. Perguntas ? ? ? Obrigado ! Boas Medidas!

    ×