Pergunta

Como faço para paralelizar meu programa F# usando o conjunto de instruções SSE3? O compilador F# suporta?

Outras dicas

.NET não fala com o hardware nesse nível. Se você deseja controle explícito sobre o conjunto de instruções usado, precisará chamar uma biblioteca escrita em um idioma mais apropriado. C/C ++ vem à mente.

Provavelmente não é útil, mas você pode brincar com os campos internos em um delegado para fazer chamá -lo ao código arbitrário: http://www.atrevido.net/blog/2005/01/28/inline+x86+asm+in+c.aspx

Veja os comentários para obter mais advertências e outras abordagens. O benefício de jogar com um alvo de delegados diretamente é (Afaik), você não receberá uma transição gerenciada como se você tivesse getDelegateForFunctionPointer ou outras abordagens interoperativas.

No lado negativo, isso significa que você deve codificá -lo manualmente e garantir que as convenções de chamada se alinhem e assim por diante. Provavelmente é frágil, e a chamada de delegado no alto pode fazer não valer a pena.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top