Technology

จำเป็นรึเปล่าที่ต้องใช้ Workstation CPU ในการทำงาน

By Arnon Puitrakul - 09 กุมภาพันธ์ 2020 - 1 min read min(s)

จำเป็นรึเปล่าที่ต้องใช้ Workstation CPU ในการทำงาน

เมื่อตอนที่ iMac 2019 กับ iMac Pro 2019 ออกมา แล้วถ้าเทียบ iMac ที่เป็น Intel Core i9 เทียบกับ iMac Pro ตัวล่างสุดที่ใช้ Intel Xeon W-2145 ที่มีสเปกดูจะใกล้เคียงกันมาก แต่ราคาต่างกันเยอะอยู่ วันนี้เราเลยจะมาเล่าให้ฟังดีกว่า ทำไม เราต้องใช้ CPU ระดับ Workstation อย่าง Intel Xeon ในการทำงาน และ จริงเหรอ ที่ Xeon เล่นเกมได้ไม่ดี วันนี้เรามาหาคำตอบกัน

แต่ก่อนอื่น เรามาดูกันก่อนดีกว่าว่า CPU ฝั่ง Workstation มีอะไรต่างกับฝั่ง Consumer อย่างไร

ECC Memory

เรื่องแรก ที่เราจะยกมา เป็นเรื่องของ Primary Memory หรือที่เราใช้ RAM กัน เล่าก่อนว่า RAM (Random Access Memory) เป็นหน่วยความจำแบบ Volatile ประเภทหนึ่ง หรือก็คือ เป็นหน่วยความจำที่ ถ้าไม่มีไฟเลี้ยง มันก็จะจำไม่ได้ ถ้าไฟดับ เปิดมาใหม่ ข้อมูลก็หายไป แต่ความดีย์งามของมันคือ ความเร็วสูงมาก ๆ ทำให้ระบบคอมพิวเตอร์จะใช้มันเป็นเหมือน Cache สำหรับการทำงาน

เรารู้กันดีว่า ระบบคอมพิวเตอร์ทั้งหมด เราทำงานด้วย ไฟฟ้า ซึ่งเป็นพลังงานรูปแบบนึง ทีนี้ ให้เราจินตนาการว่า จริง ๆ แล้ว โลกที่เราอาศัยอยู่ มันมีพลังงานลอยอยู่เต็มไปหมด ทำให้พลังงานบางอย่างมันอาจจะมารบกวนการทำงานบางอย่าง หรือ เรื่องง่าย ๆ ที่เราพบได้ง่าย เช่น ความร้อน และ ไฟฟ้าเอง ก็อาจจะทำให้ข้อมูลที่อยู่ใน Memory เปลี่ยนได้ อาจจะในระดับ Bit อย่าง เปลี่ยนจาก 1 เป็น 0

การเปลี่ยนแปลง หรือ ความผิดพลาด ทั้งหลาย อาจจะทำให้ระบบไม่สามารถทำงานได้อย่างที่ควรจะเป็น หรือในกรณีที่แย่ที่สุด อาจทำให้ระบบล่มเลยก็ได้เหมือนกัน ทำให้เครื่องอย่าง Server หรือ Workstation ที่ต้องเปิดแบบ 24/7 หรือ ทำงานต่อเนื่องเป็นเวลานาน ที่เวลาเป็นเงินเป็นทอง ไม่อาจยอมรับความผิดพลาดจากระบบได้

คิดเล่น ๆ อย่างระบบของธนาคาร ที่ต้องเปิดใช้งานตลอดเวลา ถ้าเกิดล่มขึ้นมา กว่าจะตรวจเจอ กว่าจะเริ่มระบบใหม่ มันใช้เวลาเยอะมาก เครื่องพวกนี้ มันไม่เหมือน PC ตามบ้านเราที่เปิดเครื่องปุ๊บจะเสร็จเลย เครื่อง Server หรือ Workstation จริงจัง มันจะต้องมีการตรวจสอบหลายอย่างมาก ๆ กว่าจะเริ่มทำงานได้ ทำให้การเปิดเครื่องทีนึงใช้เวลานานกว่าเครื่องที่เราใช้ตามบ้านค่อนข้างมาก

หรือ ไม่ต้องเอา ล่ม ก็ได้ เอาแค่ว่า Bit เปลี่ยนไปตัวนึง ถ้ามันเป็นจำนวนเงินละ ฮ่าเลยนะทีนี้ เอ๊ะ ทำไมถอนเงิน 1,000 บาท (01111101000) ทำไมออกมาแค่ 872 บาท (01101101000) อะไรแบบนั้น แต่ไม่ต้องกลัวนะ เรื่องแบบนี้ จริง ๆ มันเกิดได้ยากมาก ๆ เพราะระบบต้องมีการตรวจหลาย ๆ ขั้นอยู่แล้ว แต่เราพูดถึงแค่ถึงความเป็นไปได้

ทำให้ระบบที่เป็น Mission Critical System อย่างธนาคาร หรือ เครื่องที่ต้องทำงานเป็นเวลานาน ๆ เลยจำเป็นที่จะต้องใช้ หน่วยความจำหลักแบบพิเศษที่มีความสามารถในการ ตรวจจับ และ แก้ไข ความผิดพลาดในหน่วยความจำได้ เราเรียกหน่วยความจำแบบนี้ว่า ECC (Error Checking and Correction) Memory นั่นเอง

อ่านแล้วก็ดูดีเนอะ ทำไม เราที่ใช้เครื่องกันในบ้านถึงไม่ใช้ ECC Memory กัน เหตุผลคือ มันไม่จำเป็น เพราะ ปกติ เราไม่ได้ใช้งานกันนานมากแบบ เปิดข้ามวันข้ามคืน อะไรกันตลอดเวลา และ การเริ่มระบบใหม่ มันก็ไม่ได้ยาก และ เวลาเป็นเงินเป็นทองขนาด Server ดังนั้น CPU ในระดับ Consumer Grade ส่วนใหญ่จะไม่รองรับ ECC Memory กัน (ยกเว้น AMD Ryzen ที่รองรับหมด)

Cache ใหญ่กว่า

ถ้าเราลองไปดูใน Specification ของ CPU ระดับ Consumer และ Workstation อีกเรื่องที่มีความแตกต่างกันอย่างเห็นได้ชัดคือ ขนาดของ Cache ที่ให้มา

เราลองเทียบง่าย ๆ ตัวท๊อปสุดของ Comsumer ฝั่ง Intel อย่าง Core i9-9980HK ที่มีขนาด Cache อยู่ที่ 16 MB เทียบกับ 38.5 MB บน Workstation อย่าง Intel Xeon W-3275 เราจะเห็นเลยว่า ขนาดมันต่างกันอย่างเห็นได้ชัด

ทั้งนี้ที่ Cache บน Workstation CPU มีขนาดเยอะกว่า เพราะ มันต้องทำงานกับของที่มีขนาดใหญ่มาก ๆ ถ้าเราเอา Cache เยอะ ๆ มาใส่ มันก็ทำให้ ระบบสามารถทำงานได้อย่างมีประสิทธิภาพมากขึ้น หรือเล่าให้นึกภาพออกง่ายขึ้นคือ มันลดจำนวนที่ CPU ต้องรอ ข้อมูลจาก RAM เพราะถ้ามี Cache ใหญ่ขึ้น ก็เก็บของได้มากขึ้น เราก็เอาของที่น่าจะต้องใช้มาใส่ได้มากขึ้น ลดเวลาที่เราต้องเดินไปหยิบนั่นเอง

ถามอีกเหมือนเดิมว่าทำไม Consumer CPU ถึงไม่ใส่ Cache มาเยอะ ๆ ละ นั่นเพราะ การทำงานส่วนใหญ่ ถ้าเรานึกภาพตาม อย่างใช้ Spreadsheet ทั่ว ๆ ไป ตัดต่อวีดีโอ เล็ก ๆ มันไม่ได้ใช้หน่วยความจำที่ใหญ่อะไรมาก ทำให้การใส่เข้ามา มันก็ดูจะเยอะเกินใช่เหตุแน่ ๆ และแน่นอนว่า หน่วยความจำที่อยู่บน Cache นั้นเร็วมาก แต่ก็แลกมากับราคาอันแสนดุ ทำให้การใส่มาเยอะ แต่ไม่ได้ใช้มันก็จะทำให้ราคาของ CPU แพงโดยใช่เหตุ

รองรับหน่วยความจำขนาดใหญ่ขึ้น

กลับไปที่เรื่องหน่วยความจำอีกที ในที่นี้ เราจะมาพูดถึงปริมาณที่ระบบจะรองรับได้กันบ้าง ถ้าเป็น Consumer อย่าง Intel Core i9-9900k ปริมาณที่มันใส่ได้มีแค่ 128 GB เท่านั้น ในขณะที่ Intel Xeon W-3265M ที่เป็นตัว Top บน Mac Pro 2019 สามารถอัดได้สูงสุด 2 TB ไปเลย มันต่างกันอย่างลิบลับ

ถามว่า แล้ว Memory เยอะขนาดนี้ เอาไปถมบ้านใคร เราบอกเลยว่า ในการทำงานทางภาพยนต์ ที่มีการใส่ Composition เยอะ ๆ ก็กิน Memory มหาศาล หรือ การทำงานทางวิทยาศาสตร์บางอย่าง การคำนวณคือ มหาศาลมาก และ ต้องการ RAM เยอะมาก ๆ บางการทำงาน Memory ขนาด 1.5 TB ที่ Apple ให้ CTO ได้ยังไม่พอเลย ดังนั้น มันไม่แปลกเลยที่ Workstation จำเป็นต้องรองรับ RAM ที่มากขนาดนี้ เพราะตอบสนองการทำงานของ Professional เป็นหลัก

แต่พอ เราย้อนกลับมาที่เครื่องที่ใช้งานตามบ้านทั่ว ๆ ไป เราไม่ได้ต้องการของแบบนั้นเลย อย่างมาก เราก็เล่นเกม 32 GB ก็ถือว่า เหลือ ๆ แล้ว ณ ตอนที่เขียน ทำให้เราไม่ได้ต้องการหน่วยความจำเยอะมากขนาดนั้นเลย ที่สำคัญ แพง ฮ่า ๆ ใส่เยอะไปไม่ได้ใช้ มันไม่ได้ทำให้เครื่องเร็วขึ้นเลยแม้แต่นิดเดียว

จำนวน Core

อีกความต่างแบบชัด ๆ คือ จำนวน Core และ การรองรับ Multi-CPU (เราเคยเขียนเรื่อง Core และ Thread ไว้ก่อนหน้านี้ ย้อนกลับไปอ่านได้ ที่นี่)

ลองมาเทียบกันอีกทีดีกว่า เอาให้เห็นกันไปเลย Intel Core i9-10980XE ที่เป็นท๊อปของ Consumer มี 16/32 Core เท่านั้นเอง มันดูน้อยไปเลย เมื่อเจอ Intel Xeon W-3275 ที่มี 28/56 Core เห็นเลยว่า จำนวนต่างกันลิบ ฮ่า ๆ

แต่ถ้าเราลองดูลึก ๆ แล้ว สิ่งที่ต่างกันอีกอย่างคือ Clock Speed ใน CPU ที่มีจำนวน Core มาก ๆ Clock Speed มักจะต่ำลง กลับกัน CPU ที่เราใช้กันตามบ้าน Core เยอะ ไม่เท่าแต่ Clock Speed สูงกว่าเยอะเลย เช่น Core i9-9900k มี 8/16 Core และ Clock Speed สูงสุดที่ 5 GHz แต่ Intel Xeon W-3275 มี 28/56 Core แต่ Clock Speed อยู่ที่ 4.4 GHz เท่านั้นเอง อาจจะดูเหมือนไม่เยอะ แต่บอกเลยว่ามันมีผลกับความเร็วมากอยู่ ถ้าเราใช้มันรันงานแบบ Single Thread

นั่นทำให้ เราเห็นว่า ประสิทธิภาพต่อ Core คนที่ชนะคือ Consumer Grade CPU อ้าวทำไมแบบนั้นละ งี้ Workstation Grade ก็ช้ากว่าเหรอ อื้ม ก็ไม่ใช่ซะทีเดียว

โปรแกรมบนโลกเรา บางโปรแกรมก็จะทำงานโดยใช้ CPU ได้แค่ Core เดียว และบางโปรแกรมก็ออกแบบมาให้ทำงานโดยใช้หลาย ๆ Core พร้อมกันได้ ซึ่งถ้าโปรแกรมที่ใช้มันทำงานได้แค่ Core เดียว บอกตรง ๆ เลยว่า Consumer Grade สามารถทำงานได้เร็วกว่า

แต่ถ้าโปรแกรม มันทำงานได้หลาย ๆ Core พร้อม ๆ กัน ยังไง ๆ Workstation Grade ก็ชนะแบบขาดลอย ด้วยจำนวน Core ที่เยอะกว่ามาก ซึ่งโปรแกรมที่ใช้งานกันระดับ Professional น้อยมากที่จะใช้ Core เดียวในการทำงาน น้อยมากจริง ๆ ทำให้ CPU ระดับ Workstation จึงเลือกที่จะใส่ Core มาให้เยอะ แต่ Clock Speed น้อยลงมาหน่อยก็ได้

Multi-CPU

เรื่องสุดท้าย ก็คือ จำนวน CPU ที่เราสามารถใส่ได้ ใน 1 เครื่อง ปกติ เราก็น่าจะเห็นแค่ 1 เครื่องใส่ได้ 1 CPU เท่านั้น แต่ต้องยอมรับว่า งานบางอย่าง ความเร็วของ CPU ณ วันนั้นมันอาจจะยังไม่เพียงพอต่อการทำงาน ทำให้พวกเครื่อง Workstation ใหญ่ ๆ จะใช้กัน 2 CPU หรือมากกว่านั้นอีก เพื่อให้การทำงานมันทำได้เร็วขึ้นมาก ๆ

ถ้าเราลองไปดูในตลาดของพวกเครื่อง Server และ Workstation เราจะเจอ Motherboard หลายรุ่นมาก ๆ ที่สามารถใส่ได้หลาย CPU ในหนึ่งระบบ แต่บอกเลยว่า Motherboard พวกนี้คือ ราคาแพงมาก ๆ

นอกจาก ความเร็วที่มากขึ้นแล้ว การรองรับหน่วยความจำขนาดใหญ่ก็ทำได้มากขึ้นด้วยเช่นกัน ย้อนกลับไปที่เรื่องของการรองรับหน่วยความจำ เราบอกว่า CPU ระดับ Workstation Grade รองรับ RAM ได้เยอะถึง 2 TB เลยใช่มั้ย

เราจะบอกว่า นั่นสำหรับ 1 CPU ถ้าเรามี 2 CPU เราก็จับมันคูณ 2 เป็น 4 TB ได้เลย ทำให้เครื่องสามารถทำงานที่มีความซับซ้อน และ ต้องการหน่วยความจำขนาดใหญ่ได้ดีขึ้นนั่นเอง เอาให้พีคเข้าไปอีก เราจะบอกว่า Motherboard ที่เราเจอมา เยอะสุดที่มีคือ 4 CPUs คือ ถ้าเอา Intel Xeon Platinum 8180 ที่มี 28/56 Core และรองรับ Memory สูงสุดที่ 768 GB มาใส่ละก็ จำนวนสูงสุดที่ระบบนี้ทำได้คือ 112/224 Core และ Memory ขนาด 3 TB ต่อเครื่องไปเลย พวกนี้จะเหมาะกับพวก Server ขนาดใหญ่มาก ๆ และ ถ้าเอาให้พีคจริง ระบบพวกนี้ มันไม่ได้อยู่คนเดียว มันมีเพื่อนเป็นฝูงอยู่ในตู้ Rack อีกมากมาย คือ พลังการประมวลผล บอกเลยว่า เยอะมาก ๆ

เราจำเป็นที่ต้องใช้ CPU ระดับ Workstation ในการทำงานรึเปล่า ?

เล่าไปซะยิ่งใหญ่อลังการ ย้อนกลับไปที่คำถามเดิมตั้งแต่หัวข้อแล้วว่า เราต้องการ Workstation CPU ในการทำงานจริงเหรอ คำตอบคือ แล้วแต่การทำงาาน

ถ้าเราบอกว่า เราต้องเปิดใช้งานตลอดเวลาไม่ปิดเลย หรือ ต้องการ Resource การทำงานที่เยอะมาก ๆ Workstation CPU อาจเป็นคำตอบ

แต่ถ้าเราบอกว่า เราทำงานแค่วันละ 10 ชั่วโมง กลับบ้านก็ปิดเครื่อง เช้าเปิดใหม่ ไม่ได้ตั้ง Render ไว้สักเดือนนึง หรือ ไม่ได้จำเป็นต้องใช้ CPU ที่มี Core เยอะ หรือ โปรแกรมที่ใช้มันเป็น Single Core การใช้ Consumer CPU อาจจะเหมาะสมกว่า แต่อาจจะไปเล่นตัวท๊อปของ Consumer CPU ราคาก็จะใกล้ ๆ กับ Entry Workstation CPU อยู่ดี เสียเงินไม่ต่างกันเท่าไหร่ฮ่า ๆ

นอกจากนั้น ถ้าเราเลือกใช้ Workstation CPU ส่งผลให้เราต้องเปย์เงินเพิ่มอีก เพราะ ECC Memory ที่ใช้คู่กับ Workstation CPU มีราคาสูงกว่า Memory ธรรมดาอยู่เหมือนกัน

จริงเหรอที่ Workstation CPU เล่นเกมไม่ได้ดีเท่า Consumer CPU

เรื่องนี้ เราบอกเลยว่า จริง บางส่วน ย้อนกลับไปที่ ๆ บอกว่า Workstation CPU มีจำนวน Core เยอะกว่าก็จริง แต่ ประสิทธิภาพต่อ Core น้อยกว่า Consumer CPU หรือก็คือ ถ้าโปรแกรมที่เราใช้ทำงานแบบ Core เดียว Consumer CPU ก็จะทำงานได้เร็วกว่านั่นเอง

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

สรุป

เล่ามายาวมาก สรุปเลยละกัน ไม่ว่าจะเป็น Consumer CPU หรือ Workstation CPU มันก็คือ CPU เหมือนกันแหละ แต่ที่บางทีมันแยกกัน ก็เพราะ การใช้งานของพวกเราทั่ว ๆ ไป กับ การทำงานระดับ Professional มันต่างกัน ทำให้ผู้ผลิตต่างผลิต CPU ที่เหมาะกับกับลูกค้าในแบบต่าง ๆ ออกมา เพื่อให้ทุกคน สามารถใช้เครื่องมือที่ถูกในการทำงานแบบนั้น ๆ ได้นั่นเอง ส่วนคนที่ทำงาน ถามว่าต้องการ Workstation CPU มั้ย ให้ไปดูละกันว่า เรามีเงินพอมั้ย และ เราต้องการสิ่งที่เราเล่ามาทั้งหมดมั้ย ถ้าต้องการสักอย่างมาก ๆ การลงทุนซื้อเครื่องระดับ Workstation มาทำงาน ก็ดูจะเป็นการลงทุนที่ดี ก็ขอให้มีความสุขกับการเลือกเครื่องคู่ใจมาทำงาน