RISC : caracteristicas de execução de instruções e uso de um banco grande de registradores | grupo 2 | pagina 2

Beschreibung

Mindmap am RISC : caracteristicas de execução de instruções e uso de um banco grande de registradores | grupo 2 | pagina 2, erstellt von Thiago Pena am 01/06/2022.
Thiago Pena
Mindmap von Thiago Pena, aktualisiert more than 1 year ago
Thiago Pena
Erstellt von Thiago Pena vor mehr als 2 Jahre
8
0

Zusammenfassung der Ressource

RISC : caracteristicas de execução de instruções e uso de um banco grande de registradores | grupo 2 | pagina 2
  1. Uma das formas da evolução associada a computadores são as linguagens de programação.  Assim, o principal custo no ciclo de vida de um sistema é o software, não o hardware. Somado ao custo e à inconveniência, está o elemento da falta de confiabilidade: é comum que programas, tanto sistemas como aplicações, continuem a apresentar novas falhas depois de anos de operação.
    1. A resposta dos pesquisadores e da indústria foi desenvolver linguagens de programação de alto nível ainda mais poderosas e complexas.
      1. Esta solução trouxe outro problema, conhecido como diferença semântica, a diferença entre operações fornecidas em linguagens de alto nível e aquelas fornecidas na arquitetura do computador.
        1. Os projetistas responderam com arquiteturas voltadas para acabar com essa diferença. Principais recursos incluem grandes conjuntos de instruções, dúzias de modos de endereçamento e várias instruções das linguagens de alto nível implementadas no hardware.
          1. Um número de estudos foi feito durante anos para determinar as características e padrões de execução das instruções de máquina geradas a partir de programas das linguagens de alto nível. Os resultados desses estudos inspiraram alguns pesquisadores a procurar por uma abordagem diferente: mais precisamente, tornar a arquitetura que suporta linguagens de alto nível mais simples, em vez de mais complexa.
    2. Operações
      1. Instruções de atribuição predominam, sugerindo que a simples movimentação de dados é de alta importância. Há também uma preponderância de instruções condicionais (IF, LOOP). Essas instruções são implementadas na linguagem de máquina com algum tipo de instruções de comparação e desvio. Isso sugere que o mecanismo de controle sequencial do conjunto de instruções é importante.
      2. Operandos
        1. O estudo de Patterson e Sequin, que já foi referenciado (PATTERSON e SEQUIN, 1982 ), analisou também a frequência dinâmica de ocorrência de classes de variáveis. Os resultados, consistentes entre programas C e Pascal, mostram que a maioria das referências é de variáveis escalares simples.
          1. Além disso, mais de 80% de escalares eram variáveis locais (para o procedimento). As referências para vetores/estruturas requerem uma referência prévia para o seu índice ou ponteiro, o qual é novamente um escalar local. Assim, existe uma predominância de referências para escalares, e estas são altamente localizadas.
            1. O estudo de Patterson analisou o comportamento dinâmico dos programas de linguagens de programação de alto nível, independentemente da arquitetura subjacente; e sugere que o principal candidato para otimização é o mecanismo para armazenar e acessar variáveis locais escalares.
        2. Chamadas de procedimento
          1. O estudo de Tanenbaum (1978) concluiu que para 98% de procedimentos chamados dinamicamente foram passados menos do que seis argumentos e que 92% deles usaram menos do que seis variáveis locais escalares.
            1. O mesmo grupo de Berkeley analisou também o padrão de chamadas e retornos de procedimentos em programas de alto nível. Eles concluíram que é raro haver uma grande sequência ininterrupta de chamadas de procedimento seguida pela correspondente sequência de retornos.
              1. Eles concluíram que um programa permanece confinado a uma janela relativamente estreita de profundidade de chamadas de procedimentos.
          2. Grande banco de registradores versus cache
            1. O arquivo de registradores, organizado em janelas, age como um pequeno buffer para guardar um subconjunto de variáveis que têm mais probabilidade de ser bastante usadas desse ponto de vista, o arquivo de registradores age como uma memória cache, embora uma memória muito mais rápida
              1. A cache guarda uma seleção de variáveis escalares recentemente usadas e pode fazer uso mais eficiente do espaço, porque ela reage dinamicamente a situações. Além disso, ela geralmente trata todas as referências de memória da mesma forma, incluindo instruções e outros tipos de dados
                1. Um banco de registradores pode fazer uso ineficiente de espaço a cache sofre de outro tipo de ineficiência: os dados são lidos da cache em blocos. Enquanto o banco de registradores contém apenas as variáveis em uso, a cache lê um bloco de dados do qual uma parte menor ou até maior não será usada.
                  1. Existe uma característica pela qual a abordagem de registrador é claramente superior e que sugere que um sistema baseado em cache será sensivelmente mais lento. Essa distinção aparece na quantidade de overhead de endereçamento experienciada pelas duas abordagens.
            2. Uso de um banco grande de registradores
              1. A razão pela qual o armazenamento em registradores é indicado é que esse é o dispositivo de armazenamento mais rápido disponível, mais rápido que a memória principal e que a cache é necessária uma estratégia que irá permitir que operandos acessados mais frequentemente sejam guardados em registradores, minimizando operações registrador-memória
                1. Duas abordagens básicas são possíveis, uma baseada em software e outra baseada em hardware. A abordagem em software depende do compilador para maximizar o uso de registradores. A abordagem de hardware é simplesmente usar mais registradores para que mais variáveis possam ser guardadas em registradores por mais tempo.
              Zusammenfassung anzeigen Zusammenfassung ausblenden

              ähnlicher Inhalt

              IELTS-Vokabeln
              anna.grillborzer0656
              Wirk Uni Wien Teil 2
              Sabrina Lösch
              Stochastik
              elouasdi98
              Die Physiker, Friedrich Dürrenmatt 1962 (Neufassung 1980)
              p.lunk
              The Commonwealth
              Laura D
              Methoden der Stratigraphie
              Weltraumkatze Fanroth
              Forschungs- und Anwendungsfelder der Soziologie Teil 1
              stelly Welly
              Vetie Virologie 2014
              J R
              Vetie - Innere Medizin 2013
              Fioras Hu
              Vetie Tierseuchen 2018
              Johanna Müller
              Vetie - Lebensmittel 2016
              Kim Langner