| Superoptimizador GNU. GNU superoptimizer é um projeto que usa uma abordagem para encontrar a sequência de instrução mais curta para uma determinada função. |
Baixe Agora |
Superoptimizador GNU. Classificação e resumo
- Nome do editor:
- Torbjorn Granlund
- Site do editor:
- ftp://ftp.gnu.org/gnu/superopt
Superoptimizador GNU. Tag
Superoptimizador GNU. Descrição
O GNU superoptimizer é um projeto que usa uma abordagem para encontrar a seqüência de instrução mais curta para uma determinada função. O GNU superoptimizer é um projeto que usa uma abordagem para encontrar a sequência de instrução mais curta para uma determinada função. O superoptimizer é um gerador de seqüência de funções que usa uma abordagem exaustivagenada e testada para encontrar a função dada da sequência de instrução mais curta. Você tem que dizer ao superoptimizador que funciona e qual você deseja gerar código e quantas instruções você cancept.O superoptimizer não pode gerar seqüências muito longas, a menos que você tenha um computador rápido de Avery ou muito tempo livre. A complexidade do tempo do usedalgoritmo é de aproximadamente 2n O (m n) onde m é o número de instruções disponíveis na arquitetura e n é a seqüência mais curta para a função de meta. O comprimento da seqüência prática depende da arquitetura alvo e da função de meta aridade; Em Mostcases é cerca de 5, mas para uma rica instrução definida como o HPPA é just4. A mais longa sequência já gerada foi para o MC68020 e 7instructions por muito tempo. Demorou várias semanas para gerá-lo ... O superoptimizador não pode garantir que ele encontre as melhores sequências possíveis para todas as possíveis funções de meta. Por exemplo, não sequer tenta incluir constantes imediatas (outros números positivos negativos e maiores e maiores e maiores) nas seqüências. Outras razões pelas quais não são encontradas seqüências ideais é que não são incluídas , nem mesmo em sua forma somente de registro. Além disso, algumas alterações incluídas podem não ser corretamente simuladas. Se você encontrar esses problemas, por favor, informe-os ao endereço abaixo. As seqüências geradas podem estar incorretas com uma pequenaprobabilidade. Sempre verifique se uma sequência está correta antes de usá-la. Sofar, nunca encontrei nenhuma sequência incorreta. Se você encontrar um, por favor, deixe-me saber sobre isso! Tendo dito isso, observe que o superontimizador praticamente sempre seqüências findsóptimais e corretas para funções que dependem apenas de registros. O que é novo nesta versão: · Excluir a variável não utilizada Tot_bits. Tipo de CHAR. · Use aleatório () no alfa, já que o SRAND48 não funciona lá. · Devolva pequenos números com alta probabilidade.
Superoptimizador GNU. Software Relacionado