CIContextOptions.UseSoftwareRenderer Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Definir isso como true forçará o software de CPU renderizado a ser usado e impedirá que o trabalho seja descarregado para a GPU
public bool UseSoftwareRenderer { get; set; }
member this.UseSoftwareRenderer : bool with get, set
Valor da propriedade
Comentários
Os contextos de GPU podem ser descarregados para a unidade de processamento gráfico e podem ser executados muito rapidamente e ter a vantagem adicional de que eles não tributam o processo principal com sua tarefa. Os contextos de GPU têm limites de tamanhos de imagem impostos pelo hardware subjacente, em alguns dispositivos isso pode ser 2048x2048 e em dispositivos como o iPad 2 isso é 4096x4096.
Os contextos de CPU têm alguns benefícios, podem executar suas tarefas em segundo plano, dar suporte a imagens de entrada e saída maiores (no momento desta gravação, 8192x8192) e melhorar a fidelidade devido ao suporte de ponto flutuante compatível com IEEE.
Você pode verificar os limites reais para tamanhos de imagem de entrada e saída verificando as InputImageMaximumSizeOutputImageMaximumSize propriedades e .
Os contextos de GPU têm uma desvantagem extra ao interagir com operações em segundo plano. Considere o caso em que seu aplicativo aplica vários filtros e salva o resultado. Normalmente, você enfileirará esse trabalho para ocorrer mesmo que o usuário suspenda o aplicativo pressionando o botão página inicial. O usuário pode tirar uma foto e mudar para outro aplicativo. Se você optar por usar um contexto de GPU para processar sua imagem, mas tiver sido enviado para o plano de fundo, seu aplicativo será encerrado quando tentar acessar a GPU, pois a GPU agora está em uso por outro aplicativo.