เข้าใจปรากฏการณ์ CPU core 100% ตอนเล่นเกมให้ตรงก่อน
CPU core 100% gaming คืออาการที่คอร์ใดคอร์หนึ่งของซีพียูถูกใช้เต็มกำลังระหว่างเล่นเกม ขณะที่การใช้ซีพียูรวมอาจดูไม่สูง นักเล่นเกมหลายคนตีความว่าซีพียูเสียหรือไม่แรงพอ แต่ในความจริงมักหมายถึงคอร์ที่รัน main thread ของเกมกำลังเป็นคอขวด และกราฟิกการ์ดต้องรอคำสั่งจากซีพียูก่อนเริ่มเรนเดอร์เฟรมถัดไป อาการนี้จึงเกี่ยวกับความลื่นของเฟรมและ 1% lows performance มากกว่าตัวเลข FPS เฉลี่ยเพียงอย่างเดียว เวลาเห็นคอร์เดียวนิ่งอยู่ที่ 100% ระหว่างเล่นเกม อย่าเพิ่งสรุปว่าซีพียูแย่ เพราะแหล่งข้อมูลยืนยันชัดว่า “one CPU core at 100% while gaming usually indicates a busy main thread, but it is only a concern when it limits real performance” ซึ่งหมายความว่าต้องดูบริบทอื่นร่วมด้วย บทความนี้จะเล่าแบบเพื่อนแนะนำเพื่อน ว่าเราจะเช็กอะไรบ้าง จับอาการ main thread bottleneck อย่างไร และช่วงไหนถึงควรเริ่มมองเรื่องอัปเกรดซีพียู

ทำไม main thread bottleneck ถึงทำให้เกมกระตุกและ 1% lows ตก
แต่ละเฟรมของเกมต้องผ่านงานฝั่งซีพียูหลายอย่าง ทั้งรับอินพุต อัปเดตโลกในเกม รันสคริปต์ ฟิสิกส์ เลือกว่าจะเรนเดอร์อะไร แล้วส่งคำสั่งไปให้จีพียู งานบางส่วนกระจายเป็นหลายเธรดได้ แต่บางอย่างต้องทำตามลำดับ จึงมี main thread ที่สำคัญมาก ถ้าเธรดนี้ใช้เวลานานเกินงบเวลาเฟรม จีพียูจะเริ่มเฟรมใหม่ไม่ทัน กลายเป็นเฟรมที่ใช้เวลาเยอะกว่าปกติและเรารู้สึกเป็นการกระตุกหรือ frame rate stuttering ค่า 1% lows performance คือค่าที่โฟกัสเฟรมที่ช้าสุดราวหนึ่งเปอร์เซ็นต์ ไม่ใช่ค่าเฉลี่ยทั้งก้อน ถ้า main thread บางเฟรมช้ากว่าปกติ 1% lows จะลดลง แม้ค่า FPS เฉลี่ยจะดูสวยก็ตาม แหล่งข้อมูลหนึ่งยกตัวอย่างว่า Run ที่มีค่าเฉลี่ยสูงกว่าแต่อยู่ในระดับ 155 FPS กลับมี 1% low แค่ 72 FPS และให้ประสบการณ์ที่มีจังหวะตกให้รู้สึก ในขณะที่ Run ที่เฉลี่ย 142 FPS แต่ 1% low 125 FPS กลับลื่นกว่า นอกจากความแรงต่อคอร์แล้ว CPU cache เช่น L1 L2 L3 และเทคโนโลยีอย่าง 3D V-Cache มีผลกับความเสถียรของเฟรมด้วย เพราะช่วยให้ซีพียูใช้เวลากับการรอข้อมูลจากแรมให้น้อยลง ส่งผลดีต่อทั้งค่าเฉลี่ยและค่า 1% lows ในเกมที่ไวต่อซีพียู

ขั้นตอนตรวจ CPU diagnostics gaming หา main thread bottleneck แบบทีละสเต็ป
ก่อนคิดเรื่องอัปเกรดซีพียู เราควรพิสูจน์ก่อนว่าปัญหามาจากซีพียูจริงและเป็น main thread bottleneck หรือไม่ การตรวจแบบเป็นขั้นตอนจะช่วยตัดตัวแปรอื่นออก เช่นเฟรมล็อก การตั้งค่า VSync หรือโปรแกรมเบื้องหลังที่กินซีพียูโดยไม่จำเป็น ให้มองว่าการทดสอบคือการจัดฉากให้เกมอยู่ในสถานการณ์เดิมซ้ำได้ เพื่อดูกราฟให้ชัด ไม่ใช่ดูตัวเลขลอยที่เปลี่ยนไปมา แหล่งข้อมูลแนะนำให้ใช้ฉากที่ทำซ้ำได้ เช่น benchmark ในเกม หรือเส้นทางเดิมในเกมที่เราวิ่งผ่านซ้ำ แล้วเปิด overlay แสดงการใช้ซีพียูแยกแต่ละคอร์ การใช้จีพียู FPS frame time ความถี่ซีพียู และอุณหภูมิร่วมกัน ด้านล่างคือสเต็ปการตรวจทีละข้อที่ทำเองได้ที่บ้าน
- เลือกฉากทดสอบที่ทำซ้ำได้ เช่น benchmark ในเกม หรือเซฟจุดหนึ่ง แล้วเล่นผ่านฉากนั้นหลายรอบ เพื่อให้ผลการทดสอบนิ่ง
- เปิด overlay แสดง CPU diagnostics gaming สำคัญ เช่น การใช้ซีพียูรายคอร์ การใช้จีพียู FPS frame time ความถี่ซีพียู และอุณหภูมิ เพื่อดูภาพรวมแบบเรียลไทม์
- สังเกตว่ามี CPU core ใดแตะ 95–100% ตลอดหรือไม่ พร้อมดูว่าการใช้จีพียูตกลงมาแถว 65–80% หรือไม่ ถ้าใช่แปลว่าจีพียูกำลังรอซีพียูส่งงาน เป็นสัญญาณ main thread bottleneck
- ลองลดความละเอียดภาพหรือคุณภาพกราฟิกลงหนึ่งระดับแล้วทดสอบฉากเดิม ถ้า FPS ไม่ดีขึ้นมากหรือแทบไม่เปลี่ยน ในขณะที่คอร์เดิมยัง 100% อยู่ แสดงว่าคอขวดอยู่ที่ซีพียูไม่ใช่จีพียู
- เช็กความถี่และอุณหภูมิซีพียู ดูว่าคอร์ที่วิ่งเต็ม 100% ทำงานด้วยความถี่ต่ำกว่าที่ควรจะเป็นหรือมีการลดความถี่เพราะร้อนหรือไม่ ถ้าความถี่ตกขณะใช้เต็ม อาจต้องแก้เรื่องระบายความร้อนหรือการตั้งค่าพลังงานก่อน
- ดูกราฟ frame time ว่ามีสไปค์สูงซ้ำๆ หรือไม่ ถ้าเฟรมบางเฟรมใช้เวลาเกินงบ เช่นโผล่เฟรม 30 มิลลิวินาทีในเกมที่ส่วนใหญ่เฟรมอยู่ใกล้ 16 มิลลิวินาที คุณจะรู้สึกเป็น hitch หรือกระตุก แม้ค่า FPS เฉลี่ยยังดีอยู่
- เปิด Task Manager หลังเจอจังหวะกระตุก แล้วจัดลำดับตามการใช้ซีพียูเพื่อดูว่ามีโปรแกรมเบื้องหลังอย่างเบราว์เซอร์ โปรแกรมแอนตี้ไวรัส เกมลอนเชอร์ โปรแกรม RGB หรือโปรแกรมอัดหน้าจอแย่งซีพียูหรือไม่ หากมีให้ปิดและทดสอบซ้ำเพื่อตัดตัวแปรนี้ออก
- บันทึกค่าเฉลี่ย FPS 1% lows และกราฟ frame time จากการทดสอบหลายรอบ เพื่อดูแนวโน้มว่าทุกครั้งที่คอร์หนึ่งวิ่ง 100% นานๆ ค่า 1% lows ตกลงหรือมีสไปค์ในกราฟหรือไม่ ซึ่งจะยืนยันว่าซีพียูคือผู้กระทบหลักต่อความลื่น
ระหว่างทำสเต็ปเหล่านี้ ให้ระวังไม่ตีความแค่ตัวเลขการใช้ซีพียูรวม เพราะแม้ซีพียูทั้งระบบดูใช้เพียง 20–30% ก็ยังมีโอกาสที่คอร์เดียวจะตัน 100% และบล็อกทั้งเกมอยู่ได้ แหล่งข้อมูลยกตัวอย่างซีพียู 8 คอร์ 16 เธรด ที่มีหนึ่งเธรดใช้เต็มสามเธรดใช้ประมาณ 40% และที่เหลือวนอยู่ราว 10% ทำให้ตัวเลขรวมดูต่ำ แต่เกมติดรอคอร์ที่ยุ่งที่สุดแทบตลอด จุดที่หลอกตาอีกอย่างคือการล็อกเฟรมเอง เช่นเปิด VSync หรือใช้ตัวจำกัดเฟรม ทำให้จีพียูไม่วิ่งเต็ม แต่ไม่ได้แปลว่าซีพียูตันเสมอ ต้องดูว่าถ้าปลดล็อกเฟรมและปิดฟีเจอร์จำกัดเฟรม FPS ยังชนเพดานเดิมหรือไม่ และพฤติกรรมของคอร์ที่วิ่ง 100% เปลี่ยนไปอย่างไร
บทบาทของ CPU cache และการจัดสรรคอร์ของ Windows ต่อความลื่นของเกม
ซีพียูไม่ใช่แค่เรื่องจำนวนคอร์และความถี่ แต่ยังมีชั้นของ CPU cache ที่ช่วยลดเวลาในการรอข้อมูลจากแรม โดยทั่วไประบบจะมี L1 ที่เล็กและเร็วมากใกล้คอร์ L2 ที่ใหญ่ขึ้นและช้าลง และ L3 ที่ใหญ่ที่สุดและแชร์ระหว่างหลายคอร์ เวลาซีพียูต้องอ่านข้อมูลโลกในเกม ฟิสิกส์ สถานะอนิเมชัน หรือข้อมูล draw call ซ้ำๆ การที่ข้อมูลเหล่านี้อยู่ในแคชแทนที่จะต้องไปอ่านจากแรมทุกครั้งช่วยลด latency และทำให้เฟรมออกสม่ำเสมอขึ้น ข้อมูลจากแหล่งหนึ่งระบุชัดว่า “CPU cache matters because it reduces the time cores spend waiting for game data Large L3 caches—and 3D V-Cache in particular—can improve average FPS and 1% lows in CPU-sensitive games” ซึ่งหมายความว่าซีพียูบางรุ่นที่มี L3 ขนาดใหญ่หรือมีเทคโนโลยีอย่าง 3D V-Cache จะเก่งในการรักษาเฟรมให้เสถียร โดยเฉพาะในเกมโลกกว้าง เกมจำลอง และเกมกลยุทธ์ที่ใช้ข้อมูลจำนวนมากและทำซ้ำบ่อย อีกด้านหนึ่งที่มักถูกมองข้ามคือระบบจัดสรรคอร์ของ Windows ซีพียูยุคใหม่ไม่ใช่ทุกคอร์จะเท่ากันหมด บางคอร์บูสต์ความถี่ได้สูงกว่าและเฟิร์มแวร์จะรายงานข้อมูลนี้ให้ระบบปฏิบัติการผ่านฟีเจอร์ที่ทำให้บอกได้ว่าคอร์ไหนมีศักยภาพสูงกว่า หาก Windows สลับเธรดหลักของเกมไปอยู่บนคอร์ที่ไม่แรงที่สุดหรือตัดสินใจจัดสรรไม่เหมาะสม ประสิทธิภาพและ 1% lows ก็อาจแย่ลงแม้ตัวซีพียูเองจะดีพอ ข้อมูลเตือนด้วยว่าแม้ Windows จะจัดสรรได้ดีในหลายกรณี แต่ก็ไม่ถูกต้องเสมอไป และไม่ควรรีบไปปักเกมกับคอร์ใดคอร์หนึ่งเองเพียงเพราะเห็นในโปรแกรมมอนิเตอร์ว่ามันใช้คอร์ที่เราคิดว่าไม่ดีนัก การเข้าไปแทรกด้วยการ pin เธรดผิดๆ อาจทำให้ภาพรวมแย่ลงแทน วิธีที่ปลอดภัยคือใช้โปรไฟล์พลังงานที่เหมาะสม อัปเดตไดรเวอร์และเฟิร์มแวร์ซีพียู และเช็กว่าตัวเกมเวอร์ชันล่าสุดรองรับการจัดสรรคอร์ของแพลตฟอร์มได้ดีขึ้นหรือไม่
เมื่อไรควรอัปเกรดซีพียู และเมื่อไรควรแก้ด้านอื่นแทน
หลังตรวจทุกอย่างแล้ว ถ้ายังเห็น main thread bottleneck ชัดเจน เช่นมี CPU core วิ่ง 100% คู่กับการใช้จีพียูต่ำกว่า 80% อย่างต่อเนื่อง FPS ไม่ขึ้นแม้ลดกราฟิกลง และกราฟ frame time มีสไปค์ซ้ำในฉากเดิมๆ ถึงจุดนี้การมองหาซีพียูที่แรงขึ้นต่อคอร์ มี cache มากขึ้น และสถาปัตยกรรมใหม่อาจช่วยให้ทั้งค่าเฉลี่ยและ 1% lows ดีขึ้นอย่างรู้สึกได้ อย่างไรก็ตาม ซีพียูใหม่ไม่ใช่ยาวิเศษสำหรับทุกอาการเฟรมตก เพราะสาเหตุอื่นมากมายทำให้เกิด frame rate stuttering ได้เช่นกัน ทั้งข้อจำกัดฝั่งจีพียู ขั้นตอน shader compilation หลังอัปเดตเกมหรือไดรเวอร์ แรมไม่พอจนเกิดการสลับข้อมูลกับดิสก์ การโหลดแอสเซตจากสตอเรจที่ช้า หรือการโอเวอร์คล็อกที่ไม่เสถียร ถ้าอาการที่เราเจอเกิดขึ้นเฉพาะตอนโหลดด่านใหม่หรือหลังอัปเดตกราฟิกไดรเวอร์ไม่นาน ควรเช็กว่าเป็นเรื่อง shader compilation หรือการโหลดแอสเซตก่อนที่จะโทษซีพียู มุมที่สำคัญคือการดูว่าการอัปเกรดซีพียูจะแก้สิ่งที่เรารำคาญจริงหรือไม่ ถ้าเกมที่เล่นส่วนใหญ่ถูกจำกัดด้วยจีพียูและเราพอใจกับค่าเฉลี่ย FPS แล้วแต่ไม่ชอบจังหวะสะดุดเป็นพักๆ การใช้ข้อมูล 1% lows และกราฟ frame time เป็นตัวชี้วัดว่าซีพียูใหม่ช่วยให้เฟรมสม่ำเสมอขึ้นหรือไม่จะคุ้มกับค่าใช้จ่ายกว่ามองแค่ตัวเลขเฉลี่ย สรุปคืออาการ CPU core 100% ตอนเล่นเกมไม่ใช่เรื่องน่าตกใจโดยตัวมันเอง แต่เป็นสัญญาณให้เราเริ่มดูทั้งระบบแบบมีเหตุผล เพื่อให้การอัปเกรดในอนาคตแก้สิ่งที่เราต้องการจริงๆ






