VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 21
声望: 0

版主好,vnpy在进行多进程回测优化时,每个进程都需要从数据库加载一份回测数据,作为本进程的数据源,对数据量小一些的回测优化内存还够用,但是当cpu数量多,回测数据量很大的时候(tick级数据),完全没办法发挥多进程的优势,半年的tick数据已经占用十几个G的内存容量,24核的处理器只敢开两三个进程跑,否则就会爆内存,非常的不方便。能否在创建多进程前将history_data加载进内存,然后各进程单独运行时仅读取这一份数据进行回撤,这样能极大的节省资源,避免优化进程太多,跑着跑着爆内存的情况出现。

Administrator
avatar
加入于:
帖子: 4502
声望: 321

目前3.7版本的Python做不到,不支持共享内存提前加载向量化数据进行缓存

Member
avatar
加入于:
帖子: 21
声望: 0

用Python的交易员 wrote:

目前3.7版本的Python做不到,不支持共享内存提前加载向量化数据进行缓存
研究了一天,有帖子说3.8的share_memory可以实现numpy形式的内存共享,并且支持日期、字符串、float同时存在,但是vnpy目前的版本是3.7,所以想请教一下,目前有哪些模块或者库不支持3.8版本的python。
另外看到一个帖子是linux版本的python可以将3.8的share_memory移植到3.7中,但不知道windows版本的能否实现移植,谢谢版主答复!
https://blog.csdn.net/TracelessLe/article/details/110101588

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】