TensorFlow에서 마스터 및 작업자 서비스의 정확한 역할을 이해하려고합니다.TensorFlow 마스터 및 작업자 서비스
지금까지 나는 내가 시작하는 각 TensorFlow 작업이 tf.train.Server
인스턴스와 관련되어 있음을 이해합니다. 나는 이것이 의미하는 바로 것을, 하나 개의 작업 만과 관련된 오전 :.이 인스턴스는
는 "마스터 서비스"및 tensorflow::Session
인터페이스를 구현하여 "직원 서비스" "(마스터)와 worker_service.proto
(노동자) 수출 ONE 노동자 또한
, 내가 이해 ... 마스터에 대한
...은? 그것은 t의 범위입니다 그는 마스터 서비스를 ...
(1) ... 클라이언트가 예를 들어 세션을 실행할 수 있도록 클라이언트에 기능을 제공합니다.
(2) ... 세션 실행을 계산하기 위해 작업을 사용 가능한 작업자에게 위임합니다.
두 번째 질문 : 두 개 이상의 작업을 사용하여 분산 된 그래프를 실행하는 경우 하나의 마스터 서비스 만 사용됩니까?
세 번째 질문 : tf.Session.run은 한 번만 호출해야합니까?
이 적어도 내가 the whitepaper에서이 그림을 해석하는 방법이다 : 작업자에 대한
...
: 그것은 작업자 서비스의 범위는 ...(1) 작업자가 관리하는 장치에서 노드 (마스터 서비스에서 위임받은 노드)를 실행합니다.
네 번째 질문 : 한 명의 작업자가 여러 장치를 어떻게 사용합니까? 작업자가 단일 작업 배포 방법을 자동으로 결정합니까?
잘못된 진술을 내놓았을 경우를 대비하여 제발 정정하십시오! 미리 감사드립니다 !!
이전 버전에서는 GPU 장치에서 라운드 로빈 방식 이었지만 이후 버전에서는 모든 것을 GPU : 0에 배치 한 것으로 보입니다. 따라서 멀티 GPU 구성의 경우 수동 배치가 필요합니다 –