我正在使用mboost包中的blackboost函数来估计Windows 7 64位,8GB RAM机器上大约500mb数据集的模型.在执行期间,R几乎可以使用所有可用内存.计算完成后,即使在使用gc()调用垃圾收集或保存并将工作空间重新加载到新的R会话之后,仍然会将4.5gb以上的内容分配给R.使用.ls.objects(1358003)我发现所有可见对象的大小约为550mb.
gc()的输出告诉我大部分数据都在向量单元格中,虽然我不确定这意味着什么:
used (Mb) gc trigger (Mb) max used (Mb)
Ncells 2856967 152.6 4418719 236.0 3933533 210.1
Vcells 526859527 4019.7 610311178 4656.4 558577920 4261.7
Run Code Online (Sandbox Code Playgroud)
这就是我正在做的事情:
> memory.size()
[1] 1443.99
> model <- blackboost(formula, data = mydata[mydata$var == 1,c(dv,ivs)],tree_control=ctree_control(maxdepth = 4))
Run Code Online (Sandbox Code Playgroud)
......加载了一堆包...
> memory.size()
[1] 4431.85
> print(object.size(model),units="Mb")
25.7 Mb
> memory.profile()
NULL symbol pairlist closure environment promise language
1 15895 826659 20395 4234 13694 248423
special builtin char logical integer double complex
174 1572 1197774 …
Run Code Online (Sandbox Code Playgroud) 我在访问应通过docker-compose将端口公开给主机的应用程序时遇到问题。这是一个可重现的示例:
我使用角度CLI创建一个新的角度应用程序:
ng new angular-docker
Run Code Online (Sandbox Code Playgroud)
然后,我在该目录中创建一个包含以下内容的Dockerfile:
FROM node:8
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY . /usr/src/app
RUN npm install
EXPOSE 4200
CMD ["npm", "start"]
Run Code Online (Sandbox Code Playgroud)
接下来,我在同一目录中创建一个docker-compose.yaml文件:
version: '3'
services:
angular:
build: .
container_name: angular-docker
volumes:
- ./src:/usr/src/app/src
ports:
- "4200:4200"
Run Code Online (Sandbox Code Playgroud)
然后我运行:
docker-compose up
Run Code Online (Sandbox Code Playgroud)
我等到在docker-compose输出中得到以下行
angular-docker | ** Angular Live Development Server is listening on localhost: 4200, open your browser on http://localhost:4200/ **
Run Code Online (Sandbox Code Playgroud)
从docker inspect angular-docker
我看到的端口转发规则到位:
...
"Ports": {
"4200/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "4200"
}
]
}, …
Run Code Online (Sandbox Code Playgroud)