มารู้จักกับคอมพิวเตอร์ประสิทธิภาพสูง

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

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

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

โครงสร้างของคลัสเตอร์คอมพิวเตอร์

คลัสเตอร์คอมพิวเตอร์คือกลุ่มของคอมพิวเตอร์ ซึ่งอาจจะเป็นพีซี หรือเครื่องคอมพิวเตอร์อะไรก็ได้ ถ้าคอมพิวเตอร์ทุกเครื่องเหมือนกัน เราก็เรียกว่า Homogenius Cluster Computer และหากต่างกันก็เรียกว่า Heterogenius Cluster Computer
โมเดลของคลัสเตอร์คอมพิวเตอร์จึงประกอบด้วย ตัวคอมพิวเตอร์ ระบบสื่อสารข้อมูลระหว่างคอมพิวเตอร์ความเร็วสูง และซอฟต์แวร์จัดการระบบคลัสเตอร์ ตลอดจนซอฟต์แวร์การบริหารงานระบบคลัสเตอร์

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

พิรุณ (pirun.ku.ac.th) คลัสเตอร์คอมพิวเตอร์

ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเกษตรศาสตร์ มีงานค้นคว้าวิจัย และพัฒนาคลัสเตอร์คอมพิวเตอร์มานานแล้ว มีผลงานเป็นที่ยอมรับ และสร้างการประยุกต์ใช้งานในด้านต่าง ๆ ทีมงานวิจัยจึงร่วมกับสำนักบริการคอมพิวเตอร์ ประยุกต์คลัสเตอร์คอมพิวเตอร์เพื่อให้บริการบนเครือข่ายนนทรีเน็ต ตัวอย่างของการประยุกต์เช่น ระบบแคช พรอกซี่ความเร็วสูง 4 โหนด คอมพิวเตอร์บริการอินเทอร์เน็ต pirun.ku.ac.th 72 โหนด ซึ่งเป็นระบบคลัสเตอร์ที่ใหญ่ที่สุดในประเทศไทย

เครื่องพิรุณเป็นคอมพิวเตอร์คลัสเตอร์ที่ประกอบด้วยพีซีจำนวนทั้งหมด 76 โหนด แบ่งเป็นโหนดการคำนวณ 72 โหนด แต่ละโหนดเป็นพีซีที่ใช้ซีพียูเตียมทรี ความเร็ว 500 MHz หน่วยความจำหลัก 256 MB และฮาร์ดดิสค์ขนาด 8.4 จิกะไบต์ มีระบบอินเตอร์เฟสแลนแบบอีเทอร์เน็ตความเร็ว 100 Mbps ทุกเครื่องมีโอเอส ลีนุกซ์ เรดแฮท 6.0 ทำงานพร้อมด้วยโปรแกรมจัดการระบบคลัสเตอร์และโปรแกรมบริหารงานที่พัฒนาโดยภาควิชาวิศวกรรมคอมพิวเตอร์ ส่วนอีก 4 โหนดเป็นไฟล์เซิร์ฟเวอร์ 3 โหนด และโหนดสำหรับควบคุมบริหาร ตรวจสอบ แสดงผล และให้ผู้ควบคุมเครื่องติดต่อบริหารโหนดทุกโหนด สิ่งที่สำคัญคือทุกโหนดใช้โอเอสลีนุกซ์ มีระบบการแบ่งไฟล์และบริหารไฟล์เพื่อให้ผู้ใช้เก็บข้อมูลและเรียกข้อมูลเสมือนเป็นเครื่องเดียว แต่ละเครื่องจะมีไอพีแอดเดรสของตนเอง แต่การจัดการจะเป็นเสมือนร่วมกันทำงาน
เป้าหมายของเครื่องพิรุณเป็นเครื่องที่ให้บริการอินเทอร์เน็ต ให้สมาชิกชาวนนทรีเน็ตเรียกใช้ มีการบริการให้สร้างโฮมเพ็จและเรียกใช้งานเพื่อรองรับมวลสมาชิกกว่าสามหมื่นคน ที่สำคัญคือ เครื่องพิรุณมีประสิทธิภาพสูง เพราะผู้ใช้ที่เรียกเข้ามาจะได้รับการจ่ายให้เข้าสู่โหนดต่าง ๆ เพื่อแบ่งภาระซีพียู ทำให้การบริการต่าง ๆ ของซีพียูเป็นไปอย่างรวดเร็ว และหากแต่ละโหนดรองรับผู้ใช้งาน 20 คน จะรองรับผู้ใช้รวมกัน พร้อมกันได้ถึงเกือบสองพันคนในเวลาเดียวกัน ซึ่งไม่ทำให้ประสิทธิภาพการให้บริการตกลง
เครื่องพิรุณ เป็นตัวอย่างหนึ่งของการประยุกต์ใช้ระบบคสัสเตอร์คอมพิวเตอร์ งานที่สนับสนุนการวิจัยและพัฒนาที่สำคัญคือ ระบบบริหารการแบ่งโหนด งานการตรวจสอบและแสดงสถิติการทำงาน งานทำให้ระบบมีความน่าเชื่อถือสูง เช่นถ้ามีโหนดหนึ่งมีปัญหา โหนดอื่นต้องเข้าช่วยเหลือและแบ่งงานคืนมาโดยผู้ใช้ไม่รู้สึก งานการประยุกต์การคำนวณตามโมเดลขนานแบบ MIMD - Multiple Instruction Multiple Data ฯลฯ
เครื่องพิรุณจึงเป็นเครื่องแบบเอนกประสงค์ เพราะให้บริการผู้ใช้บนนนทรีเน็ต แล้วยังเป็นเครื่องสำหรับการศึกษาทดลอง และงานการพัฒนาประยุกต์ใช้งาน
นอกจากเครื่องพิรุณคลัสเตอร์แล้ว สำนักบริการคอมพิวเตอร์ยังร่วมมือกับภาควิชาวิศวกรรมคอมพิวเตอร์ นำเอาคลัสเตอร์คอมพิวเตอร์มาใช้บริการในเรื่องของ Search Engine ที่ชื่อ นนทรีเสิร์ช และการใช้กับระบบ Cache และยังเตรียมการสำหรับงานจัดการฐานข้อมูลขนาดใหญ่ เพื่อรองรับระบบบริการข้อมูลในเรื่องดิจิตอลไลบรารีสำหรับอนาคต
คลัสเตอร์คอมพิวเตอร์จึงเป็นตัวอย่างของงานพัฒนาวิจัยแบบพึ่งตนเอง และสร้างผลงานทางวิชาการเพื่อปรับใช้ให้เหมาะสม โดยเฉพาะระบบคลัสเตอร์เป็นระบบที่มีการลงทุนต่ำ ทั้งนี้เนื่องจากใช้ซอฟต์แวร์ลีนุกซ์เป็นโอเอสหลัก และส่วนที่เหลือเป็นซอฟต์แวร์ที่เป็นผลจากการร่วมกันพัฒนาต่อให้ใช้งานได้


สาระน่ารู้ประจำสัปดาห์, ฉบับที่ 17 : 8 - 14 พฤษภาคม 2543
สำนักบริการคอมพิวเตอร์ มหาวิทยาลัยเกษตรศาสตร์