kdb+ 32位,4GB限制的后果是什么?
kdb+ 32-bit, what are the consequences of the 4GB restriction?
我正在尝试 kdb+,我发现与程序通信的最常见方式是在端口 5001 上打开一个套接字,如下所示:
q -p 5001
现在 kdb+ 具有称为 peach 的多线程内置功能。根据他们的文档,从 v3.1 版本开始,peach 将自动:
Since v3.1, peach can use multiple processes instead of threads,
configured through the startup cmd line option -s with a negative
integer, i.e. -s -N, e.g. -s -4. On startup, kdb+ will then try to
connect to N processes on ports 20000 through 20000+N-1, and use of
peach with >1 element will use those processes to execute the function
given to peach.
我想知道,我也可以手动执行此操作吗?
我目前 运行 kdb+ 的 32 位版本(每个进程最多 4GB 内存)并且根据 this post,您可以使用多处理系统解决 4GB 限制.
那么 multiprocessing 到底是什么意思?我是否需要在不同端口(如桃子)上启动 N kdb+ 实例以获得 N x 4GB 内存应用程序,或者是 4GB限制只是对其他事物的限制?
那么这个4GB到底有什么限制?需要开多个端口吗?
编辑
This website似乎证实了对于多进程和进程间通信,我需要在不同的地址打开多个端口。
那么kdb+的每个实例是否被认为是一个进程?
没错,一个kdb+实例本身就是一个完整的进程,端口号是你自己在命令行设置的。
你不能在多个手柄上做桃子:
handles:hopen each someList;
{x"do some work"} peach handles
您将获得 noupdate
,因此您似乎无法手动执行此操作。在 hopen
上有一个握手,所以即使在该端口范围内有其他进程 运行,kdb 也会知道哪些是 kdb(我猜它会在 hopen
上捕获错误。 .但我从未尝试过)
真正的限制是 1GB 内存用于变量和表格。不是 4GB。
我正在尝试 kdb+,我发现与程序通信的最常见方式是在端口 5001 上打开一个套接字,如下所示:
q -p 5001
现在 kdb+ 具有称为 peach 的多线程内置功能。根据他们的文档,从 v3.1 版本开始,peach 将自动:
Since v3.1, peach can use multiple processes instead of threads, configured through the startup cmd line option -s with a negative integer, i.e. -s -N, e.g. -s -4. On startup, kdb+ will then try to connect to N processes on ports 20000 through 20000+N-1, and use of peach with >1 element will use those processes to execute the function given to peach.
我想知道,我也可以手动执行此操作吗?
我目前 运行 kdb+ 的 32 位版本(每个进程最多 4GB 内存)并且根据 this post,您可以使用多处理系统解决 4GB 限制.
那么 multiprocessing 到底是什么意思?我是否需要在不同端口(如桃子)上启动 N kdb+ 实例以获得 N x 4GB 内存应用程序,或者是 4GB限制只是对其他事物的限制?
那么这个4GB到底有什么限制?需要开多个端口吗?
编辑
This website似乎证实了对于多进程和进程间通信,我需要在不同的地址打开多个端口。
那么kdb+的每个实例是否被认为是一个进程?
没错,一个kdb+实例本身就是一个完整的进程,端口号是你自己在命令行设置的。
你不能在多个手柄上做桃子:
handles:hopen each someList;
{x"do some work"} peach handles
您将获得 noupdate
,因此您似乎无法手动执行此操作。在 hopen
上有一个握手,所以即使在该端口范围内有其他进程 运行,kdb 也会知道哪些是 kdb(我猜它会在 hopen
上捕获错误。 .但我从未尝试过)
真正的限制是 1GB 内存用于变量和表格。不是 4GB。