- เกมยิงแนวร่วมมือยอดนิยม Helldivers 2 ลดขนาดไฟล์ติดตั้งได้ประมาณ 85% ในอัปเดตล่าสุด
- ด้วยความช่วยเหลือของ Nixxes Software โดยใช้วิธี การลบข้อมูลเกมที่ซ้ำกัน (de-duplication) ทำให้ขนาดลดจาก 154GB เหลือ 23GB
- โครงสร้างขนาดใหญ่เดิมเกิดจากการทำข้อมูลซ้ำเพื่อการปรับแต่งบน ฮาร์ดดิสก์แบบกลไก (HDD) แต่พบว่าผลของการปรับปรุงเวลาโหลดที่คาดการณ์ไว้ก่อนหน้านี้ถูกประเมินสูงเกินไป
- ผลการวัดล่าสุดพบว่า ผู้ใช้ HDD (ประมาณ 11% ของทั้งหมด) ก็มีเวลารอโหลดภารกิจเพิ่มขึ้นเพียง ไม่กี่วินาที เท่านั้น
- ‘Slim version’ ใหม่ให้ประสบการณ์การเล่นเหมือนเดิม โดยยังคงความคืบหน้าและประวัติการซื้อเดิมไว้
การลดขนาดการติดตั้ง Helldivers 2 อย่างมาก
- Arrowhead Game Studios ประสบความสำเร็จในการลดขนาดไฟล์ติดตั้งของ Helldivers 2 จากประมาณ 154GB เหลือ 23GB
- มีผลประหยัดพื้นที่จัดเก็บได้ประมาณ 131GB
- การปรับปรุงนี้ทำได้ผ่านความร่วมมือกับ Nixxes Software
- Nixxes เป็นผู้พัฒนาเกม PC port สำหรับไตเติลหลักของ Sony ที่มีชื่อเสียง
- ความร่วมมือนี้ได้นำเทคโนโลยี การกำจัดข้อมูลซ้ำ มาใช้
การถอดการปรับแต่งเพื่อ HDD และผลต่อเวลาโหลด
- โครงสร้างขนาดใหญ่มาตั้งต้นมาจากการซ้ำข้อมูลเพื่อปรับแต่งการโหลดบน ฮาร์ดดิสก์แบบกลไก (HDD)
- ใช้วิธีการเก็บข้อมูลชุดเดียวกันไว้หลายตำแหน่งเพื่อช่วยลดความหน่วงการโหลดบน HDD
- อย่างไรก็ตาม ทีมพัฒนาพบว่า การประมาณการตามข้อมูลอุตสาหกรรมเดิมไม่แม่นยำ
- ผลการวัดล่าสุดชี้ว่าผู้ใช้ HDD อยู่ที่ระดับ 11% ตามข้อมูลล่าสุด
- กลุ่มผู้ใช้เหล่านี้ก็มีเวลาโหลดภารกิจเพิ่มขึ้นเพียง ไม่กี่วินาทีสูงสุด
- ทีมพัฒนาชี้แจงว่า “เวลาส่วนใหญ่ของการโหลดเกิดจาก ขั้นตอนการสร้างเลเวล โดยขั้นตอนนี้ทำงานพร้อมกับการโหลดแอสเส็ตบนดิสก์”
แนวทางของ Slim version
- อัปเดตเบต้า Steam ทำให้ ‘Slim version’ ใช้งานได้
- ให้ประสบการณ์ที่ เหมือนเดิมในด้านการทำงาน
- ความคืบหน้า, การมีส่วนร่วมในการสงคราม, ประวัติการซื้อ ถูกเก็บไว้ทั้งหมด
- ผู้เข้าร่วมเบต้าสามารถ Opt-out ได้ทุกเมื่อ
นัยสำคัญต่อการพัฒนาเกม
- กรณีนี้ถูกมองว่าเป็นตัวอย่างที่แสดงศักยภาพในการลดพื้นที่จัดเก็บของเกม PC
- ยกเลิกปัญหาทั่วไปของเกม AAA ขนาดใหญ่ที่เกิดจาก ข้อมูลซ้ำที่ไม่มีประสิทธิภาพ
- และกระตุ้นให้ผู้พัฒนาเกมรายอื่นตระหนักถึงความสำคัญของ การเพิ่มประสิทธิภาพพื้นที่จัดเก็บ
ข้อมูลเพิ่มเติม
- Helldivers 2 คือ เกมยิงแนวเล่นร่วมมือกัน ซึ่งได้รับการปรับปรุงความประหยัดพื้นที่และความเข้าถึงได้มากขึ้นผ่านอัปเดตล่าสุด
- Tom’s Hardware แนะนำการเปลี่ยนแปลงนี้ว่าเป็น ความก้าวหน้าที่ดีสำหรับผู้เล่น PC
2 ความคิดเห็น
น่าอนาถอยู่เหมือนกัน แต่ก็ยังดีที่แก้ไขแล้ว ดูเหมือนว่าจะมีกรณีแบบนี้อีกมาก เพียงแค่ยังไม่เป็นที่รู้จักเท่านั้น
ความเห็นจาก Hacker News
จากข้อมูลที่นักพัฒนาเปิดเผยล่าสุด พบว่าแม้ผู้ใช้ Helldivers 2 ที่ใช้ HDD (11% ณ สัปดาห์ที่แล้ว) เวลาการโหลดภารกิจก็เพิ่มขึ้นเพียงไม่กี่วินาทีในกรณีแย่ที่สุด
การโหลดส่วนใหญ่เกิดจาก กระบวนการสร้างเลเวล ซึ่งทำงานแบบขนานกับการอ่านแอสเซ็ตจากดิสก์
ถึงอย่างนั้นการที่ขนาดติดตั้งเกิน 150GB ก็ดูเข้าใจได้ยาก และยังคงมีคำถามว่าทำไมถึงปล่อยให้เป็นแบบนี้ได้ทั้งที่การปรับแต่งเช่นนี้ทำได้
ผู้ใช้ส่วนใหญ่ไม่ได้ดูความต้องการพื้นที่ดิสก์อย่างละเอียดก่อนซื้อเกม จึงแทบไม่กระทบยอดขาย ขณะที่การแก้ไขกลับต้องใช้ทรัพยากรการพัฒนา
ถ้าต้องรับภาระ ค่าเก็บข้อมูลบนคลาวด์ 150GB ต่อผู้ใช้จริง ๆ ก็น่าจะแก้ทันที
คอขวดที่แท้จริงพอวัดแล้วจะเห็นชัดและมักแก้ได้ง่าย
แต่เพราะงานแบบนี้ทั้งน่าเบื่อและมีต้นทุน จึงมักมีลำดับความสำคัญต่ำในองค์กร
อาจเป็นวงจรย้อนแย้งที่ขนาดติดตั้งใหญ่เกินไปจนต้องลงใน HDD ลูกเสริม แทน SSD
นักพัฒนาจำนวนมากปรับแต่งโดยอาศัย ความรู้สึก/สัญชาตญาณ มากกว่าข้อมูลจริง
เพราะคอนโซลถูกสร้างโดยตั้งสมมติฐานว่าใช้ SSD จึงไม่มีข้อมูลซ้ำซ้อน
ขนาด 154GB ของเวอร์ชัน PC เป็นผลจาก การทำสำเนาแอสเซ็ตจำนวนมาก และช่วงแรกเคยอยู่ราว 40~60GB
หลังจากนั้นก็พัฒนาต่อบนเอนจินที่เลิกพัฒนาแล้ว (Bitsquid/Stingray, ลิงก์วิกิ) จนค่อย ๆ โตขึ้น
มีการคำนวณว่าทรัพยากรฮาร์ดแวร์ที่สูญเปล่าเพราะปัญหานี้ตลอด 2 ปีที่ผ่านมา มีมูลค่าอย่างน้อย 10 ล้านดอลลาร์
เท่ากับว่าผู้พัฒนาประหยัดต้นทุนวิศวกรรมหลักแสนดอลลาร์ด้วยการผลักภาระไปให้ผู้ใช้
วิธีเดียวที่จะหยุดความสูญเปล่าแบบนี้ได้คือ วัฒนธรรมที่ให้ความสำคัญกับคุณภาพซอฟต์แวร์
ส่วนตัวมีไดรฟ์เกม 2TB เลยไม่ได้กังวลเรื่องพื้นที่มากนัก
ในมุมผู้บริโภคก็มีเสียงสงสัยว่าแนวคิดนี้นับเป็นต้นทุนจริงหรือไม่
อีกคนเสริมว่า “ก็แค่ไม่ติดตั้งเกมเพิ่มอีกเกมหนึ่ง” เท่านั้นเอง
ในปี 2014 Titanfall ก็เป็นกรณีคล้ายกัน
จากทั้งหมด 48GB มีถึง 35GB เป็น เสียงแบบไม่บีบอัด ซึ่งบอกว่าเป็นมาตรการสำหรับ CPU แบบดูอัลคอร์ (บทความที่เกี่ยวข้อง)
การถอดรหัส MP3 แทบไม่กิน CPU และฟอร์แมตเสียงของ Titanfall (160kbps OGG) ก็เป็นการบีบอัดแบบสูญเสียข้อมูลอยู่แล้ว
ให้ความรู้สึกคล้ายกับกรณีประหยัดค่าใช้จ่ายเดือนละ 10,000 ดอลลาร์จากการล้าง ทรัพยากรที่ไม่ได้ใช้งาน ในบัญชี AWS
ส่วนม็อดของ Monster Hunter: Wilds ช่วงหลังกลับใช้วิธีตรงกันข้าม คือเก็บเท็กซ์เจอร์แบบคลายการบีบอัดไว้ล่วงหน้าเพื่อลดคอขวดจาก GPU decompression (ลิงก์วิดีโอ)
ฉันเองก็ต้องไปจัดการบัญชีคลาวด์บ้างแล้ว
มีคนสงสัยว่ามีการปรับแต่งอะไรเกิดขึ้นกันแน่
HDD มีการจัดวางทางกายภาพที่ไม่แน่นอน จึงอาจเป็นไปได้ว่าการ เก็บซ้ำเพื่อลดเวลา seek ไม่ได้มีประสิทธิภาพนัก
หรือสาเหตุอาจเป็นแค่ปิดตัวเลือก ‘deduplication ตาม hash ตอน build’ ไว้ก็ได้
หลังลบข้อมูลซ้ำแล้ว ขนาดติดตั้งก็ลดลงมาก และไฟล์อัปเดตก่อนหน้านี้กลับใหญ่กว่าตัวเกมทั้งหมดเสียอีก
ทุกวันนี้ SSD กลายเป็นค่าปริยายแล้ว การลงแรงขนาดนี้เพื่อปรับให้เหมาะกับ HDD จึงดูเกินไปหน่อย
วิธีคือใส่ทรัพยากรร่วมที่แต่ละสเตจต้องใช้ซ้ำเข้าไปในแต่ละส่วน เพื่อให้อ่านได้รวดเดียว
นี่คือกลยุทธ์ แลกพื้นที่เพื่อแบนด์วิดท์ ที่เคยใช้กันมาตั้งแต่ยุค CD
เพิ่งดาวน์โหลด Hunt: Showdown ไม่นานมานี้ ขนาด 70GB แล้วหนึ่งเดือนต่อมาก็มีอัปเดตที่ต้องดาวน์โหลดใหม่ขนาดเท่ากันอีกครั้ง
น่าจะเป็นการอัปเดตแบบ เขียนทับทั้งชุด
การต้องดาวน์โหลดใหม่หลายสิบ GB นั้นไม่มีประสิทธิภาพจริง ๆ
ปัญหาแบบนี้เป็นสิ่งที่เกมส่วนใหญ่แก้กันได้ไปแล้วตั้งแต่ก่อน Steam จะเติบโตขนาดนี้
Helldivers 2 สร้างด้วย เอนจินเก่า (พื้นฐานจาก Bitsquid) แต่ก็แสดงให้เห็นว่าแม้ไม่ใช่เทคโนโลยีล่าสุด ก็ยังสร้างเกมที่ยอดเยี่ยมได้
ถึงขั้นที่ชุมชนต้องรณรงค์กันเองเพื่อขอให้แก้ไข
ถ้าไม่ได้ใช้เอนจินที่เลิกซัพพอร์ตไปแล้ว ก็น่าจะเสถียรกว่านี้มาก
เคยทำงานปรับแต่งเกมแล้วลดขนาดลงเหลือ 1/4 ในแง่ของ runtime ได้ แต่เพราะภายนอกดูเหมือนไม่มีอะไรเปลี่ยน โปรดิวเซอร์จึงไม่ค่อยรู้สึกอะไร
เลยสงสัยว่าคราวนี้ภายในทีมจะมีแรงต้านแบบเดียวกันหรือไม่
เคยเจอกรณีที่ Steam เห็นว่า SSD มีพื้นที่ไม่พอจึงใช้ HDD เป็นแคช ทำให้ ติดตั้งใหม่ทั้งเกมกลับเร็วกว่าอัปเดต
ดาวน์โหลด 5 นาทีแต่อัปเดต 8 ชั่วโมง ฟังแล้วเหลือเชื่อมาก
หวังว่าการอัปเดตครั้งนี้จะช่วยให้ปัญหาแบบนี้ดีขึ้น
เพราะต้องถอดรหัสไฟล์ที่เข้ารหัสไว้อยู่แล้วจากดิสก์อีกครั้ง ทำให้เกิด ภาระ random access สูง
มีคนสงสัยว่าไฟล์ซ้ำบน PC ถูกใช้งานจริงหรือไม่
และระบบเข้าถึงไฟล์มีข้อจำกัดมากพอจะตัดสินได้หรือไม่ว่าสำเนาไหนบน HDD เร็วกว่า
แบบนี้ HDD จะอ่านต่อเนื่องได้โดยไม่ต้อง seek
วิธีนี้ถูกใช้มาตั้งแต่ยุค Crash Bandicoot และเหตุผลที่ยังปรับให้เหมาะกับ HDD ในปี 2024 ก็คงเป็นเพียงข้อจำกัดของเอนจิน