Confira !!
O compilador GCC ao usar o nível de otimização padrão "-O2" provavelmente será um pouco mais rápido com o lançamento do GCC 12 do próximo ano, já que os desenvolvedores estão procurando habilitar as opções do vetorizador por padrão.
O GCC atualmente não habilita seu loop e vetorizadores SLP por padrão até atingir o nível de otimização "-O3", mas há uma conversa sobre ativar as opções de vetorizar em -O2, o nível de otimização comumente usado por muitas distribuições Linux e outros pacotes de software.
Com base nas discussões de agosto , os desenvolvedores do GCC estão analisando seriamente a possibilidade de habilitar suas opções de vetorização no nível -O2. Este trabalho é sobre como habilitar a vetorização de loops em árvores.
Ainda há algumas regressões a serem resolvidas, mas no geral ter isso habilitado em -O2 deve ser uma vitória para o desempenho da GNU Compiler Collection.
A discussão tem se inclinado a habilitar a opção de vetorizar com o modelo de custo "muito barato" ( -fvect-cost-model = very-cheap ). Esse modelo muito barato permite a vetorização se a contagem de iteração escalar for um múltiplo de quatro, é o "mais barato" desses modelos de custo. Enquanto isso, o modelo de custo padrão para vetorização em -O3 é "dinâmico" para ter mais verificações para tentar determinar se um caminho de código vetorizado será mais rápido. Mais detalhes para os interessados na documentação do GCC .
A discussão sobre como habilitar o vetorizador por padrão para -O2 no lançamento do GCC 12 do próximo ano estão agora em discussão e até agora há interesse em ver isso acontecer por parte de desenvolvedores que trabalham em vários destinos de CPU.
Até a próxima !!
Nenhum comentário:
Postar um comentário