【发布时间】:2019-12-10 12:02:54
【问题描述】:
背景
我正在尝试将算法从顺序转换为并行,但我卡住了。
点数图
我正在创建点数图。
减少
在股票下跌时,每次突破地板时添加一个O。
增加
在股票上涨时,每次突破天花板时加一个X。
反转
如果股票反转方向,但变化小于反转阈值(3 个单位),则什么也不做。如果变化大于反转阈值,则开始新列(X 或 O)
顺序与并行
因此,这非常简单。我为地板和天花板保留了一个变量。如果当前价格突破了下限或上限,或者变化超过了反转阈值,我可以采取适当的行动。
我的问题是,有没有办法同时找到这些反转点?我对并行思考还很陌生,所以如果这是微不足道的,我很抱歉。我试图在 CUDA 中做到这一点,但我已经被困了好几个星期。我曾尝试使用 NVidia 的 finite difference 算法。这些会产生局部最大值/最小值,但不会产生反转点。微小的波动会产生大量的相对最大/最小,但大多数都是微不足道的,因为变化不大于反转大小。
【问题讨论】: