Hyperthreading คืออะไรและทำไมคุณจึงควรใส่ใจ

สมมติว่าคุณกำลังซื้อโปรเซสเซอร์ใหม่ และจู่ๆ คุณต้องตัดสินใจระหว่างผลิตภัณฑ์สองชิ้นที่เหมือนกันบนกระดาษ แต่ผลิตภัณฑ์หนึ่งมีคุณสมบัติที่เรียกว่าไฮเปอร์เธรดดิ้(hyperthreading)งและอีกผลิตภัณฑ์ไม่มี

เห็นได้ชัดว่าไฮเปอร์เธรดดิ้งเป็นสิ่งที่ดีเพราะคุณต้องจ่ายเงินเพิ่ม แต่มันทำอะไรได้บ้าง? ที่สำคัญที่สุด เป็นสิ่งที่คุณ(you)ควรใส่ใจหรือไม่? เพื่อตอบคำถามเหล่านี้ เราต้องใช้ทางอ้อมสั้นๆ ว่าCPU(CPUs)ทำงานอย่างไร

พลังไร้ขีดจำกัด!

แม้ว่าคุณจะไม่ใช่ทั้งหมดที่สนใจในรายละเอียดทางเทคนิคที่ดีของเทคโนโลยีคอมพิวเตอร์(computer technology)คุณคงเคยได้ยินเกี่ยวกับกฎของมัวร์(Moore’s Law)มาก่อน ไม่ใช่กฎธรรมชาติจริงๆ แต่เป็นข้อสังเกตว่าส่วนประกอบพื้นฐานของวงจรรวมมีความหนาแน่นเพิ่มขึ้นเป็นสองเท่าทุก ๆ สองปีหรือมากกว่านั้น

นี่หมายความว่าประสิทธิภาพของCPUจะเพิ่มขึ้นเป็นสองเท่าทุกๆ สองปี ซึ่งเป็นอัตราการปรับปรุงแบบทวีคูณ หากรถที่เร็วที่สุดในโลกมีความเร็วเป็นสองเท่าของรถที่ออกมาเมื่อสองปีที่แล้วและแนวโน้มนั้นยังคงดำเนินต่อไปเป็นเวลาหลายสิบปี เราจะมียานพาหนะที่มีความเร็วเท่ากับยานอวกาศ ใน นิยายวิทยาศาสตร์ (science fiction)ดังนั้น นี่จึงเป็นสิ่งที่ปฏิวัติวงการที่สุดอย่างหนึ่งเกี่ยวกับเทคโนโลยี(computer technology)คอมพิวเตอร์

ปัญหาคือประสิทธิภาพของCPU ไม่ได้ถูกกำหนดโดยความหนาแน่นของส่วนประกอบเท่านั้น มันคือความเร็วสัญญาณนาฬิกา(clock speed)ซึ่งเป็นจำนวนรอบการคำนวณเต็มรูปแบบที่สามารถทำได้ในหนึ่งวินาที เป็นสิ่งสำคัญอย่างเห็นได้ชัด หากคุณใช้CPUและเพิ่มความเร็วสัญญาณนาฬิกา(clock speed) เป็นสองเท่า CPU จะทำงานสองเท่าเช่นกัน อย่างน้อยก็ในทางทฤษฎี

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

ดังนั้น หนึ่งในวิธีแก้ไขคือใส่ CPU(CPU)มากกว่าหนึ่ง ตัว ในโปรเซสเซอร์ทุกตัว เพื่อให้งานต่างๆ สามารถแบ่งออกได้ วันนี้ ซีพียู(CPUs)แบบ quad-core ค่อนข้างเป็นการกำหนดค่าหลัก

Hyperthreading (HT) เป็นชื่อของ Intel สำหรับmultithreading พร้อม(simultaneous multithreading)กัน โดยพื้นฐานแล้วหมายความว่า คอร์ CPU หนึ่งคอ(CPU core)ร์สามารถทำงานสองปัญหาได้พร้อมกัน ไม่ได้หมายความว่าCPUสามารถทำงานได้มากเป็นสองเท่า เพียงเพื่อให้แน่ใจว่าความจุทั้งหมดถูกใช้โดยจัดการกับปัญหาที่ง่ายกว่าหลายอย่างพร้อมกัน

สำหรับระบบปฏิบัติการ(operating system) ของคุณ คอร์ซิลิกอนCPU จริงแต่ละคอ(CPU core)ร์จะมีลักษณะเหมือนสองคอร์ ดังนั้นจึงฟีดแต่ละคอร์ทำงานเสมือนว่าแยกจากกัน เนื่องจากสิ่งที่ CPU ทำนั้นไม่เพียงพอสำหรับการทำงานให้เต็มประสิทธิภาพ HT ทำให้แน่ใจว่าคุณใช้เงินได้อย่างคุ้มค่าจากชิปนั้น

ใครควรสนใจเกี่ยวกับ ไฮเปอร์เธรดดิ้ง(Hyperthreading) ?

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

ตัวอย่างเช่น หากคุณมี CPU แบบดูอัลคอร์ ไฮเปอร์เธรดและ(CPU)ไม่ใช่ HT คอร์คอ ร์ CPU ตัวเลือก ควอดคอ(quad core option) ร์ เป็นตัวเลือกที่ดีกว่า เนื่องจากประสิทธิภาพการทำงานแบบ single-thread แบบ single- core(core performance) อยู่ใกล้ กัน ทำไม? เนื่องจาก ซีพียู(CPU)ควอดคอร์ มี ฮาร์ดแวร์การประมวลผล(processing hardware)ทางกายภาพมากกว่า

ปัญหาที่แท้จริงจะเกิดขึ้นเมื่อคุณมีซีพียู(CPUs) สองตัว ที่มีข้อกำหนดทางกายภาพเหมือนกัน แต่ตัวหนึ่งมี HT และอีกตัวไม่มี ตอนนี้คำถามของเราเกี่ยวกับซอฟต์แวร์ที่คุณต้องการเรียกใช้จริงๆ หากคุณมีซอฟต์แวร์ที่สามารถสร้างเธรดได้มากพอที่จะใช้เธรด HT ได้เช่นกัน คุณจะเห็นการเพิ่มขึ้นอย่างมากจากการเลือกใช้CPU ที่ มีไฮเปอร์เธรดดิ้ง เพียง(Simply)เพราะว่าไม่มี การสูญเสีย ความสามารถในการประมวลผล(processing capacity)ใดๆ และส่วนประกอบกำลังทำงานใกล้เต็มศักยภาพโดยใช้เวลาให้มากที่สุด

หากซอฟต์แวร์ที่คุณต้องการเรียกใช้มีเธรดไม่เพียงพอที่จะใช้คอร์เสมือน HT ด้วย คุณจะเห็นว่าประสิทธิภาพไม่แตกต่างกันอย่างแท้จริง

การดำเนินการตามธรรมเนียม เช่น การเรนเดอร์ CPU 3D , การเข้ารหัสวิดีโอ(video encoding)และการปรับแต่งรูปภาพ(photo manipulation)จะสร้างเธรดได้มากเท่าที่CPU ที่แย่ของคุณ จะทำได้ กล่าวอีกนัยหนึ่ง แอปพลิเคชั่นระดับมืออาชีพที่ทันสมัยจำนวนมากนั้นต้องการเธรด นี่คือเหตุผลที่Hyperthreadingถูกจำกัดให้ใช้กับCPU(CPUs) ระดับมืออาชีพ เช่นi7 ขึ้น(i7 and up)ไป

แอปพลิเคชัน หลัก(Mainstream)เช่น เวิร์ดโปรเซสเซอร์และเว็บเบราว์เซอร์จะไม่ทำงานได้ดีกับไฮเปอร์เธรดดิ้ง แม้ว่าจะสามารถสร้างเธรดได้มากขึ้นก็ตาม เพียง(Simply)เพราะความต้องการของแอปพลิเคชันเหล่านั้นที่คนส่วนใหญ่ใช้ไม่ได้ทำให้CPU(CPUs) ระดับเริ่มต้น มีปัญหา

คำถามเกี่ยวกับการเล่นเกมครั้งใหญ่

วิดีโอ(Video)เกมเป็นอีกหนึ่งแอปพลิเคชั่นหลักที่ไม่แยแสต่อHyperthreading ในขณะที่เขียนในปี 2019 เอ็นจิ้นวิดีโอเกม(video game) ล่าสุด เริ่มมีเธรดมากขึ้น ซึ่งหมายความว่า ซีพียู(CPUs)ที่เปิดใช้งาน HT จะทำงานได้ดีกว่า เกมที่เก่ากว่าจะไม่เห็นข้อได้เปรียบใดๆ เลย ยกเว้นเกมประเภทจำลองสถานการณ์บางเกมที่ใช้ AI หรือกระบวนการอื่นๆ ที่เน้น CPU เป็นหลัก

นั่นหมายความว่าพีซีเกมถัดไปของคุณควรมี Hyperthreadingหรือไม่ ประเด็นคือ ตอนนี้เรากำลังก้าวเข้าสู่ตลาดซีพียู กระแสหลักที่มี (CPU market)ซีพียู(CPUs) แบบ 6, 8 และ 12 คอร์เป็นบรรทัดฐาน ดังนั้นจึงเป็นการดีกว่ามากที่จะมีแกนทางกายภาพมากขึ้นหากเป็นไปได้

คำตอบง่ายๆ

หวังว่าคำอธิบายข้างต้นจะชัดเจนเพียงพอ แต่ขอแยกย่อยเป็นบรรทัดล่าง:

  • หากคุณทำงานแบบมืออาชีพ งานหนัก Hyperthreading ก็สำคัญ
  • หากคุณเป็นผู้ใช้งานทั่วไป ไม่ต้องกังวล!
  • หากคุณคือคอเกม ให้จัดลำดับความสำคัญในการมีคอร์มากขึ้นในบิวด์ถัดไปของคุณเหนือ HT แต่รับ HT เพิ่มเติมหากราคาเหมาะสม

Hyperthreadingเป็นเทคโนโลยีที่ยอดเยี่ยม แต่ก็ไม่คุ้มกับของแถมสำหรับทุกคน ตอนนี้คุณควรรู้ว่า "คนๆ นั้น" คนนั้นคือคุณหรือไม่!



About the author

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



Related posts