我试图使用ML引擎中的分布式培训作业来训练我的模型(这不是用tf.estimator或tf.keras构建的)。
为了在ML引擎中运行分布式培训任务,我应该采取哪些步骤?
我发现了以下指导方针:
--scale-tier提供分步指南参数所以,如果在命令行中提供了前者,是否意味着我不需要对后者做任何事情,因为ML引擎在某种程度上负责在设备之间分发我的图形?还是我需要两者兼得?
此外,如果我使用以下方法手动指定设备,会发生什么情况:
with tf.device('/gpu:0/1/2/etc')然后,..and使用--scale-tier运行命令
发布于 2018-05-15 12:05:03
有两种可能的情况:
-您想要使用带有CPU的机器:
在这种情况下,你是对的。使用--scale-tier参数就足以拥有在ML引擎中自动分发的作业。
您有几个缩放层选项{1}。
-您想要使用带有GPU:的机器
在本例中,您必须定义一个描述所需GPU选项的config.yaml文件,并运行一个gcloud命令,以config.yaml作为参数{2}启动ML引擎作业。
如果在代码中使用with tf.device('/gpu:0/1/2/etc'),则会强制使用该设备,而该设备将覆盖正常行为。{3}
{1}:https://cloud.google.com/ml-engine/reference/rest/v1/projects.jobs#scaletier
{2}:机器
{3}:gpu
https://stackoverflow.com/questions/50342019
复制相似问题