Datalab笔记本不使用所有Compute Engine资源

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Datalab笔记本不使用所有Compute Engine资源相关的知识,希望对你有一定的参考价值。

我尝试使用Compute Engine虚拟机在Google Cloud Platform中运行笔记本。我在地球引擎代码编辑器中测试了笔记本中包含的涉及地球引擎功能和对象的操作,并且在一定的计算时间内一切顺利。现在我导出datalab笔记本中的所有操作,在Cloud Platform上推送我的容器并在标准类型的虚拟机上运行它:n1-standard-8。当我在本地机器上运行datalab容器时,操作速度并不快。如果我在虚拟机上可视化CPU的使用率约为5%,笔记本电脑会因超过计算时间而停止运行。我不明白为什么VM不利用更多CPU的计算资源,如果我可以使用命令扩展笔记本计算时间。

答案

通过运行stress命令在系统上造成可配置的CPU压力,您可以确保问题与GCP上的计算机或资源相关。

在linux机器上运行stress命令后,如果你的CPU使用率超过90%,意味着你的虚拟机工作正常,你需要检查你的应用程序资源,找出限制的原因,不能使用超过5%的CPU。

当您使用n1-standard-8型机器时,意味着您有8个虚拟CPU和30 GB内存。

压缩8个核心90秒的示例:

 stress --cpu 8 --timeout 90

您可以转到VM instances page并选择您的VM,然后检查您的机器图表以查看您的CPU使用百分比。

如果您发现在图表上施加压力后CPU使用率没有发生变化,请确保您没有在计算机中运行nice, cpulimit, and cgroups工具来限制CPU。

以上是关于Datalab笔记本不使用所有Compute Engine资源的主要内容,如果未能解决你的问题,请参考以下文章

Datalab 到 BigQuery - 将变量值插入 SQL

如何在 Google Cloud Datalab 中使用 Bigquery JSON 函数

如何快速从 Google Cloud Datalab 笔记本中获取数据?

删除 Google Cloud Datalab SQL 模块参数中的引号?

如何将数据框从 Cloud Datalab 导出到 BigQuery 表?

无法从 DataLab 连接到 Bigquery API