Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在调用R包时提高性能_R_Performance_Opencpu - Fatal编程技术网

在调用R包时提高性能

在调用R包时提高性能,r,performance,opencpu,R,Performance,Opencpu,我们已经创建了一个R包,它应该通过OpenCPU进行近实时的评分。现在的问题是,调用包的开销非常大。R部分的执行速度相当快,因此开销在R初始化之前和之后 R包包含两个ModelObeJCT(100MB和40MB)。我们可以看到性能差与ModelObeJCT的大小有关,因为如果对象较小,性能会提高 我们已经在server.conf中添加了要预加载的包,并添加了onLoad您是否尝试将包名添加到/etc/opencpu/server.conf中的preload配置参数中?(在第3.3节中列出)感谢您

我们已经创建了一个R包,它应该通过OpenCPU进行近实时的评分。现在的问题是,调用包的开销非常大。R部分的执行速度相当快,因此开销在R初始化之前和之后

R包包含两个ModelObeJCT(100MB和40MB)。我们可以看到性能差与ModelObeJCT的大小有关,因为如果对象较小,性能会提高


我们已经在
server.conf
中添加了要预加载的包,并添加了
onLoad您是否尝试将包名添加到
/etc/opencpu/server.conf
中的
preload
配置参数中?(在第3.3节中列出)感谢您的回复。是的,它已经添加到/etc/opencpu/server.conf(中还介绍了您的Apache配置是否使用prefork模型?不,我们还没有对此进行配置。但我不明白这会如何影响性能。目前,我们只是测试模型,因此卷曲的数量非常有限,因为它们是手动完成的。我相信Apache的默认MPM是prefork,因此除非您更改它,否则它将被禁用。)很可能是您所需要的。prefork模型确保在请求需要子进程之前,新进程已经启动/准备就绪。由于每个API/函数调用都使用R,子进程的转换可能非常耗时,因此您希望每个R实例都有一个子进程,并且希望在c之前加载它们将接收客户端请求。这可能不是您的问题,但我认为您不会得到与其他apache multi-proc模块相同的保证。您是否尝试将包名添加到
/etc/opencpu/server.conf
中的
预加载
配置参数中?(在本手册的第3.3节中列出)谢谢您的回复。是的,它已经添加到/etc/opencpu/server.conf(中还介绍了您的Apache配置是否使用prefork模型?不,我们还没有对此进行配置。但我不明白这会如何影响性能。目前,我们只是测试模型,因此卷曲的数量非常有限,因为它们是手动完成的。我相信Apache的默认MPM是prefork,因此除非您更改它,否则它将被禁用。)很可能是您所需要的。prefork模型确保在请求需要子进程之前,新进程已经启动/准备就绪。由于每个API/函数调用都使用R,子进程的转换可能非常耗时,因此您希望每个R实例都有一个子进程,并且希望在c之前加载它们客户端请求将被接收。这可能不是您的问题,但我认为您不会得到与其他apache multi-proc模块相同的保证。
redirect    namelookup    connect   pretransfer starttransfer total 

1.626196    0.000045      0.000049  0.000118    1.633508      3.259843
redirect    namelookup       connect   pretransfer starttransfer total 

0.085428      0.000044      0.000049      0.000125      0.046630      0.132217