c – 与ForwardIterator并行?
我只是在想我们是否可以加速提取出现在排序的std :: list< int>中的不同元素.通过运行parallelized version的parallelized version.
我对这如何运作的概念是这样的:
>按部分拆分数据.>将算法并行应用于这些部分.>合并结果,同时计算各部分之间的边缘情况.
但正如我所看到的那样,只有一个ForwardIterator而不是RandomAccessIterator,需要至少两次传递来并行解决这个问题:一次传递来设置这些部分,下一次传递应用算法.
我理解,并非每个问题都会受益于并行化的优点.
我的概念是如何正确的(大约)?
那么我的问题是,为什么并行算法不需要RandomAccessIterators?在这里支持ForwardIterator是否有益?算法能否检测到它们具有哪种类型的迭代器,并相应地选择更高效的版本?