TensorFlow - คอมพิวเตอร์แบบกระจาย
บทนี้จะเน้นเกี่ยวกับวิธีเริ่มต้นใช้งาน TensorFlow แบบกระจาย จุดมุ่งหมายคือเพื่อช่วยให้นักพัฒนาเข้าใจแนวคิดพื้นฐานของ TF แบบกระจายที่เกิดขึ้นอีกครั้งเช่นเซิร์ฟเวอร์ TF เราจะใช้ Jupyter Notebook สำหรับประเมิน TensorFlow แบบกระจาย การใช้งานคอมพิวเตอร์แบบกระจายกับ TensorFlow มีดังต่อไปนี้ -
Step 1 - นำเข้าโมดูลที่จำเป็นซึ่งจำเป็นสำหรับการประมวลผลแบบกระจาย -
import tensorflow as tf
Step 2- สร้างคลัสเตอร์ TensorFlow ด้วยโหนดเดียว ให้โหนดนี้รับผิดชอบงานที่มีชื่อ "คนงาน" และจะดำเนินการหนึ่งครั้งที่ localhost: 2222
cluster_spec = tf.train.ClusterSpec({'worker' : ['localhost:2222']})
server = tf.train.Server(cluster_spec)
server.target
สคริปต์ข้างต้นสร้างผลลัพธ์ต่อไปนี้ -
'grpc://localhost:2222'
The server is currently running.
Step 3 - การกำหนดค่าเซิร์ฟเวอร์ด้วยเซสชันที่เกี่ยวข้องสามารถคำนวณได้โดยดำเนินการคำสั่งต่อไปนี้ -
server.server_def
คำสั่งดังกล่าวสร้างผลลัพธ์ต่อไปนี้ -
cluster {
job {
name: "worker"
tasks {
value: "localhost:2222"
}
}
}
job_name: "worker"
protocol: "grpc"
Step 4- เปิดเซสชัน TensorFlow โดยมีเอ็นจิ้นการดำเนินการเป็นเซิร์ฟเวอร์ ใช้ TensorFlow เพื่อสร้างเซิร์ฟเวอร์ภายในและใช้lsof เพื่อค้นหาตำแหน่งของเซิร์ฟเวอร์
sess = tf.Session(target = server.target)
server = tf.train.Server.create_local_server()
Step 5 - ดูอุปกรณ์ที่มีอยู่ในเซสชันนี้และปิดเซสชันที่เกี่ยวข้อง
devices = sess.list_devices()
for d in devices:
print(d.name)
sess.close()
คำสั่งดังกล่าวสร้างผลลัพธ์ต่อไปนี้ -
/job:worker/replica:0/task:0/device:CPU:0