สวัสดีครับทุกท่าน

         ผมได้มีโอกาสไปคุยกับคอมพิวเตอร์เครื่องหนึ่ง เลยเก็บอะไรที่ผมได้คุยกับเค้ามาฝากพวกเรากันครับ

เม้ง : สวัสดีครับ คุณคลัสเตอร์ สบายดีไหมครับ

คลัสเตอร์ : สวัสดีครับคุณเม้ง สบายดีครับ ตอนนี้สุขภาพเครือข่ายของเราอยู่ครบ 100% เครื่องลูกข่ายทุกตัวทำงานขยันขันแข็งกันดีมากๆเลย

เม้ง :  วันนี้ผมมีคำถามมาให้คุณคลัสเตอร์ช่วยแนะนำระบบการทำงานในระบบเครือข่ายของคุณหน่อย ว่าทำงานกันอย่างไร ถึงมีศักยภาพเต็มที่ดีมากๆ เลย เผื่อมนุษย์เราจะได้มีโอกาสเอาไปประยุกต์ใช้ได้บ้าง คนเรามีปัญหาในการบริหารงานมากๆ เลยตอนนี้

คลัสเตอร์ : คืออย่างนี้นะครับคุณเม้ง ผมเองเป็นเครื่องแม่ข่าย จะทำหน้าที่เปิดบริการให้ผู้ใช้ ป้อนข้อมูลเข้ามา แล้วผมจะทำการประมวลผลคำสั่งเหล่านั้น เพื่อจะกระจายงานที่ผู้ใช้สั่งเข้ามา ส่งไปให้เครื่องลูกข่ายในระบบของผมให้ทำงานกัน เรียกว่าการทำงานคำนวณเชิงขนาน Parallel Processing, Parallel Computing นั่นเอง

เม้ง : รบกวนช่วยอธิบายตัวอย่าง ง่ายๆ ได้ไหมครับ ว่ามีอะไรบ้าง เผื่อคนไทยจะได้เข้าใจการทำงานมากขึ้น

คลัสเตอร์ : ออได้ซิครับ จริงๆ ตัวผมเอง ก็คนไทยผลิตขึ้นมานี่หล่ะครับ เค้าเอาพวกผมมาต่อๆ กันเป็นระบบเครือข่าย แล้วให้พวกผมต่อเชื่อมกัน แล้วก็คุยกันผ่านข้อความด้วยไลบรารี่ MPI (Message Passing Interface) ผมจะยกตัวอย่างให้เข้าใจง่ายๆ นะครับ ว่าพวกเราทำงานกันแบบทีมเวิร์ค ได้อย่างไรนะครับ  ยกตัวอย่างเช่นในเครือข่ายของผมมีเครื่องอยู่ 10 เครื่องรวมทั้งตัวผม

  • ยกตัวอย่างเช่น ผมรับคำสั่งการคำนวณให้บวกเลข หนึ่งร้อยตัว จาก 1-100 นะครับ ถามว่าหากคุณเม้งมีคนสิบคน คุณเม้งจะแบ่งกันคำนวณอย่างไรครับ ในสิบคนนั้น ให้หาผลรวม 1-100 นะครับ โดยไม่ต้องหาจากสูตรลับ N*(N+1)/2  แต่ต้องคำนวณเป็น 1+2+3+...+99+100

  • ก่อนอื่นผมเป็นเครื่องแม่ข่าย ก็เปรียบเสมือนผู้บริหารครับ ผมก็ทำการแบ่ง ตัวเลข ในร้อยตัวนี่ ออกเป็น 10 ช่วง เท่ากับจำนวนเครื่องที่ผมมี

  • จากนั้นผมก็จะทำการติดต่อแต่ละเครื่อง แล้วส่งตัวเลขชุดละ 10 ตัวไปให้แต่ละเครื่อง โดยบอกว่า ช่วยคำนวณผลรวมให้ด้วย ผมก็จะส่งชุดข้อมูลเก้าชุดนี้ไปให้เครื่องอื่นๆ แล้ว ชุดหนึ่งผมเก็บไว้คำนวณเอง

  • เมื่อแต่ละเครื่องคำนวณเสร็จแล้ว ก็ส่งผลลัพธ์มาให้ผม ผมก็รับผลลัพธ์ทั้งหมดจากสิบแหล่ง รวมทั้งตัวผมด้วย แล้วรวมเข้ากันอีกที เช่น

  • เครื่องที่ 1 ทำหน้าที่รวม 1+2+3+...+10

  • เครื่องที่ 2 ทำหน้าที่รวม 11+12+13+...+20

  • ทำแบบนี้ไปจนครบสิบเครื่อง

  • ท้ายที่สุดแล้วผมก็จะทำหน้าที่รวมผลลัพธ์อีกที แล้วส่งผลไปให้ผู้ใช้ที่สั่งเข้ามา ว่าได้ผลลัพธ์รวมเท่าไหร่

เม้ง : โอ้โห คุณคลัสเตอร์ทำงานเป็นระบบมากเลยนะครับ นับว่าการคำนวณของคุณเร็วกว่าคุณคำนวณคนเดียวแน่ๆ เลยใช่ไหมครับ ยิ่งจำนวนเครื่องมากก็ยิ่งดีใช่ไหมครับ

คลัสเตอร์ : ใช่ครับ เราต้องทำงานให้เป็นระบบ ไม่อย่างงั้น จะมีใครเชื่อเราหล่ะครับ ยิ่งจำนวนเครื่องมากก็ยิ่งดี และหากแทนที่เราจะคำนวณแค่ร้อยตัว หากเราเปลี่ยนเป็นคำนวณ เป็น 1 ล้านล้านตัวเลขหล่ะครับ เราจะเร็วขึ้นมาก เพราะหากคำนวณเครื่องเดียวคุณจะพบว่า เครื่องทั่วไปคำนวณช้ามาก หากเครื่องเดียว  แล้วการคำนวณอย่างอื่นก็เช่นกันครับคุณเม้ง ดังนั้นผมเห็นว่าในปัจจุบัน คนไทยได้สร้างพวกเราขึ้นมา เหมือนว่าจะเป็นระบบที่น่าจะเกิดประโยชน์กับเมืองไทยด้วย ที่มีอยู่ตอนนี้ก็คือ ระบบไทยกริด www.thaigrid.net ซึ่งเราในประเทศผมว่าไม่จำเป็นต้องไปสั่งซื้อเครื่องซุปเปอร์คอมพิวเตอร์ก็ได้ ไม่ต้องเสียค่าดูแล และไม่แพงด้วย เพราะระบบที่ผมใช้อยู่ตอนนี้ ก็แค่เอาเครื่องพีซีมาต่อๆ กัน แล้วก็ติดตั้งระบบปฏิบัติการลีนุกซ์ ลงไป แล้วติดตั้งไลบรารี่ที่ต้องการใช้ให้พวกเราทำงานกันเป็นทีม พวกเราก็ทำเต็มที่ได้ เพียงแต่ต้องเขียนโปรแกรมให้พวกเราคำนวณแบบฉลาดๆ หน่อย เราจะทำงานเต็มที่เลยครับ

เม้ง : นับว่าเยี่ยมมากๆ เลยครับ คุณคลัสเตอร์  วันนี้ผมคงต้องขอตัวก่อนนะครับ วันหน้าผมจะมารบกวนคุยกับคุณต่อนะครับ ในเรื่องหลักการ การบริหารงานของคุณต่อ เพราะผมเชื่อว่าระบบนี้ คนไทยน่าจะเรียนรู้การบริหารงานแบบคุณ ในเรื่องการแบ่งงานกันทำ แล้วเคารพกฏที่ตั้งเอาไว้

คลัสเตอร์ : ด้วยความยินดีครับ หากจะให้ผมช่วยอะไร ด้วยความยินดีนะครับ

เม้ง : ขอบคุณมากๆ เลยครับ ไปก่อนนะครับ