Se o seu ambiente de compilação estiver na máquina turion x2:
- Passo 1: Supondo que o GNU gcc / g ++, -mtune = native -march = native, irá construir código otimizado para a máquina na qual o compilador é executado. Eu não sei como dizer ao compilador para descarregar os flags escolhidos, mas
Se você quiser fazer uma compilação cruzada, precisará examinar os sinalizadores de capacidade do seu processador:
-
Passo 1: Na sua máquina turion x2: cat / proc / cpuinfo | grep ^ flags | sort -u
-
Etapa 2: encontre a documentação da diretiva -march e examine as possíveis famílias de CPU para as quais existem diretivas. Para AMD cpus (eu tenho um notebook Turion x2 L310, mas, infelizmente, ele está executando o Windows 10), olhe para os alvos k8 ou k8-sse. De acordo com a documentação do compilador GNU 4.5.3, eles possuem as seguintes características:
- k8, opteron, athlon64: CPUs baseadas no núcleo AMD K8 com suporte a conjunto de instruções x86-64. (Este superconjunto MMX, SSE, SSE2, 3DNow !, 3DNow! Aprimorado e extensões de conjunto de instruções de 64 bits.)
- k8-sse3, opteron-sse3, athlon64-sse3: Versões aprimoradas de k8, opteron e athlon64 com suporte ao conjunto de instruções SSE3.
Para descobrir quais arquiteturas seu compilador realmente suporta, faça este comando (suponho que c ++ é o idioma de destino):
g++ --help=target
Espero que isso seja útil.