Programação Paralela em Arquiteturas Multi-Core/Ambientes de programação e bibliotecas: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Linha 111:
 
O código abaixo mostra como usar um auto_partitioner no lugar de um grainsize. Note que o parametro grainsize é omitido quando construir um blocked_range e que um auto_partitioner objeto é passado como um terceiro argumento para o parallel_for.
 
#include "tbb/parallel_for.h"
void ParallelApplyFoo( float a[], size_t n) {
parallel_for(blocked_range<size_t>(0,n), ApplyFoo(a),
auto_partitioner() );
}
 
Como com muitas heuristicas, tem se situações onde auto_partitioner pode não encontrar o valor ótimo e o simple_partitioner deveria produzir o melhor desempenho. Nos recomendamos usar auto_partitioner ao menos que você tenha tempo para experimentar e melhor o ''grainsize'' para as maquinas de interesse.
 
=== Desenvolvendo aplicações utilizando ''parallel_reduce'' ===