Perché non c'è una riduzione parallela nella libreria di modelli standard?

1

Alexander Stepanov ha dichiarato in colloqui e interviste che la sua realizzazione che alla fine lo ha portato alla programmazione generica e alla libreria di modelli standard, è stato il caso dell'algoritmo di riduzione parallela.

Perché non ci sono parallel_reduction (begin, end, associativeop) in STL? O qualcosa che potrebbe facilmente essere trasformato in esso con un sovraccarico dell'operatore (inner_product fa un solo passaggio e accumula le operazioni in modo asimmetrico). Non riuscivo nemmeno a trovarlo nella versione SGI, né nella sezione numerica.

Esempi di ciò che sto pensando:

Riduzione parallela di [a, b, c, d, e, f, g, h] con operatore binario ~ è

((a ~ b) ~ (c ~ d)) ~ ((e ~ f) ~ (g ~ h))

invece di accumulare

(((((((a+b)+c)+d)+e)+f)+g)+h)

e con inner_product puoi ottenere solo

(a*e)+(b*f)+(c*g)+(d*h)

se non mi sbaglio.

    
posta user1358 04.04.2014 - 16:48
fonte

0 risposte

Leggi altre domande sui tag