我想使用 OpenMP 线程或 python 中的类似技术并行化“for 循环”迭代。 代码如下所示。 “idexs”迭代 1024 次,它所做的只是选择一个索引 (i) 并在 self._storage[i] 处进行数组访问并将所有信息存储在data.
我可以使用 Python 中的 OpenMP 技术来加速此操作吗?
代码:
def _encode_sample(self, idxes):
obses_t, actions, rewards, obses_tp1, dones = [], [], [], [], []
for i in idxes:
data = self._storage[i]
obs_t, action, reward, obs_tp1, done = data
obses_t.append(np.array(obs_t, copy=False))
actions.append(np.array(action, copy=False))
rewards.append(reward)
obses_tp1.append(np.array(obs_tp1, copy=False))
dones.append(done)
return np.array(obses_t), np.array(actions), np.array(rewards), np.array(obses_tp1), np.array(dones)