kdb q-从属进程显示表

时间:2018-10-05 15:27:21

标签: kdb

我的功能昂贵

mainfunc:{[batch;savepath] 
     ...compute large table depending on batch and save it to savepath...
}
被复制到从属进程

,每个进程处理对该函数的不同batch输入。
假设我需要在input:til 1000上执行该函数,然后进程1执行mainfunc[input[til 50];savepath],而进程2执行mainfunc[input[50+til 50]]。由于它们是进程,因此无法将线程保存到文件。

我试图避免线程的原因是mainfunc的输出是一个大表,如果将该表发送到主进程并从那里保存,则会有很多序列化开销。 / p>

现在,我遇到了要在每个进程中扩展大型表的限制。但是,展开操作(对于带符号的表)需要修改为枚举保留的sym文件,一旦2个进程试图访问该sym文件,我就会遇到异常。我使用类似

splaydirname set .Q.en[hsym `$savepath] largetable; / .Q.en locks the sym file enumeration is done

我该如何解决?

感谢您的帮助

0 个答案:

没有答案