OTIMIZAÇÃO DO COMPILADOR FORTRAN 90 (F90) DO CRAY
Por: lucioandrade09 • 18/9/2018 • Projeto de pesquisa • 482 Palavras (2 Páginas) • 147 Visualizações
OTIMIZAÇÃO DO COMPILADOR FORTRAN 90 (F90) DO CRAY/CESUP/UFRGS
Opção | Descrição | Default |
0, 1, 2, 3 | Especificam vários níveis de otimização geral. | 2 |
aggress, noagress | aggress faz com que o compilador trate um bloco do programa (por exemplo, uma sub-rotina ou uma função) como uma única região de otimização. Dessa maneira, pode melhorar a otimização de unidades grandes do programa, mas aumenta o tempo de compilação e o seu o tamanho. | noagress |
b1, nob1 | b1 permite o carregamento de operadores escalares básicos no interior dos loops. | nob1 |
allfastint, fastint, nofastint | allfastint executa a multiplicação rápida, divisão e compara seqüências para todos os objetos dos dados inteiros, independentes de como são declarados. fastint executa a multiplicação rápida, divisão e compara seqüências para os objetos dos dados inteiro que são opção declarada (com nenhum KIND = ou especificação com *). nofastint executa as operações como 64-bit. | fastint |
ieeeconform, noieeeconform | ieeeconform faz com que o código executável aproxime-se mais do padrão floating-point de IEEE do que a modalidade default. Quando especificados, muitas otimizações são disabled e o código executável é mais lento. Esta opção é suportada nos sistemas CRAY T90, que suportam a aritmética floating-point de IEEE, mas não é suportada em nenhum outro sistema UNICOS. | noieeeconform |
inline0, inline1, inline2, inline3 | Especificam vários níveis de inlining. | inlne0 |
inlinefrom=source | Especifica um diretório que contenha procedimentos para a expansão inline do código. | |
loopalign, nolopalign | loopalign faz com que o compilador tente alinhar as instruções de DO e DO WHILE, comparando o comprimento do buffer com o número de instruções geradas em cada laço. | noloopaling |
modinline, nomodinline | modinline prepara procedimentos do módulo de modo que possam ser inlined. | nomodinline |
msgs, momsgs | msgs escreve mensagens de otimização para o stderr. | nomsgs |
negmsgs, nonegmsgs | negmsgs escreve as mensagens para o stderr que indicam porque uma otimização específica não ocorreu. | nonegmsgs |
nointerchange | nointerchange inibe as tentativas do compilador de intercambiar loops. Por default, deve ser executada a otimização de intercâmbio dos loops. | |
overindex, nooverindex | nooverindex assegura que nenhuma índice ultrapasse os limites declarados das dimensões de um vetor. | nooverindex |
pattern, nopattern | pattern permite combinar pattern para a substituição da biblioteca. | pattern |
recurrence, norecurrence | recurrence permite o vetorização de loops de recursivos. | norecurrence |
scalar0, scalar1, scalar2, scalar3 | Especificam vários níveis de otimização escalar. | scalar2 |
stream0, stream1, stream2, stream3 | Especificam vários níveis para o processador Multi-Streaming (MSP). Estes argumentos são aceitos somente em sistemas CRAY SV1. | stream0 |
task 0, task1, task 2, task3 | Especificam vários níveis de tasking. | task1 |
taskinner, notaskinner | taskinner especifica Autotasking para loops innermost. | notaskinner |
threshold, nothreshold | threshold executa um teste para determinar se há trabalho suficiente em um ninho de loops antes que Autotasking esteja tentado. | threshold |
vector0, vector1, vector2, vector3 | Especificam vários níveis do vetorização. | vector2 |
vsearch, novsearch | vsearch vectorizes loops de pesquisa. | vsearch |
zeroinc, nozeroinc | zeroinc especifica que as variáveis de incremento (CIVs) podem ser incrementadas por zero. | nozeroinc |
...