Computer >> คอมพิวเตอร์ >  >> ระบบเครือข่าย >> อินเทอร์เน็ต

การใช้หน่วยความจำใน Firefox 3.1 Beta 3

เมื่อไม่กี่วันที่ผ่านมา ผมได้รีวิว Firefox 3.1 Beta 3 ไปแล้ว มันน่ารักทีเดียว มันมีประสิทธิภาพที่ดีขึ้นของ Javascript มาพร้อมกับคุณสมบัติการใช้งานและความเป็นส่วนตัวใหม่ รองรับองค์ประกอบมัลติมีเดีย HTML ในอนาคต ... แต่ไม่มีที่ไหนเลยในบทความนั้นที่ฉันพูดถึงการใช้หน่วยความจำ

ด้วยเหตุผลที่ดี

การวัดการใช้หน่วยความจำของแอปพลิเคชันอย่างแม่นยำเป็นงานที่ยุ่งยากมาก อย่างดีที่สุด คุณสามารถคาดเดา ประมาณการ บ่งชี้ได้ แต่โดยปกติแล้วสิ่งเหล่านี้จะเป็นเรื่องส่วนตัวและขึ้นอยู่กับปัจจัยในขอบเขตที่จำกัดซึ่งแทบไม่มีประโยชน์เลย คนส่วนใหญ่ใช้ตัวเลขดิบที่รายงานโดยยูทิลิตี้ระบบต่างๆ (เช่น Task Manager, Process Explorer, ps) เป็นเพียงผู้ชี้ขาดความต้องการใช้หน่วยความจำ

ในบทความนี้ ฉันจะทำสองสิ่ง:อย่างแรก ลองตอบคำถามง่ายๆ ว่า Firefox 3.1 Beta จะใช้หน่วยความจำมากกว่า/น้อยกว่า Firefox รุ่นปัจจุบันหรือไม่ ประการที่สอง ฉันจะสอนคุณเกี่ยวกับการจัดการหน่วยความจำ

บทความนี้ส่วนใหญ่จะเกี่ยวกับการใช้หน่วยความจำใน Linux เพราะมันง่ายกว่ามากที่จะเจาะลึกเข้าไปในหัวใจของสิ่งต่าง ๆ ในระบบปฏิบัติการนี้ แต่ฉันจะไม่ปล่อยให้ผู้ใช้ Windows ค้างคาเช่นกัน! เราจะพูดถึงการใช้หน่วยความจำของ Windows Firefox ด้วย

เรามาเริ่มกันเลย

ทำไมการหาคำตอบง่ายๆ ถึงยาก

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

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

ตัวอย่างในชีวิตจริง

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

ดังนั้น การทดสอบของคุณ (และของฉัน) จะต้องได้รับการควบคุมอย่างเข้มงวด หากคุณต้องการตรวจสอบพฤติกรรมของแอปพลิเคชัน คุณจะต้องทดสอบการใช้งานในระยะสั้นและระยะยาว โดยเปิดแท็บเดียวและหลายแท็บ เมื่อแสดงภาพและเรียกใช้สคริปต์เทียบกับข้อความ HTML แบบคงที่ เมื่อไม่ได้ใช้งานเป็นเวลา 12 ชั่วโมงเมื่อเทียบกับเย็น เริ่มต้นเมื่อดาวน์โหลด ฯลฯ และทำเช่นนี้อย่างน้อยสองครั้งสำหรับแต่ละเวอร์ชัน เพื่อให้แน่ใจว่าผลลัพธ์ที่รายงานนั้นถูกต้องและประเมินการเปลี่ยนแปลง

ฉันหวังว่าคุณจะเข้าใจแรงโน้มถ่วงของงานที่อยู่ในมือ เอาล่ะเรื่องไร้สาระมาทำธุรกิจกันเถอะ

การใช้หน่วยความจำบน Linux

กรณีทดสอบ:Linux Mint 6 Felicia ทำงานแบบเวอร์ช่วลไลซ์บนเครื่อง Intel Core Duo โดยมี RAM 512MB ที่จัดสรรให้กับระบบปฏิบัติการเกสต์ Firefox ที่ไม่มีโปรแกรมเสริมจะบันทึกธีมเริ่มต้น ให้เราเริ่มต้นด้วยการตรวจสอบสิ่งที่ระบบบอกเราโดยการเปิดยูทิลิตี้การตรวจสอบระบบ

ไฟร์ฟอกซ์ 3.0.3:

Firefox 3.1 เบต้า 3:

เราจะเห็นว่าเบต้าใช้ 29MB มากกว่า 24.4MB ที่ใช้โดยเวอร์ชันที่ใช้งานจริงที่มีอยู่ นี่เป็นการเริ่มต้นแบบเย็นโดยเปิดแท็บเดียว โดยรวมแล้วดูเหมือนว่าจะเพิ่มขึ้น 19%

ตัวเลขเหล่านี้บอกอะไรเราได้บ้าง?

คำตอบคือ:ไม่มีอะไร โดยทั่วไปแล้วบน Linux แอปพลิเคชันมักจะดึงหน่วยความจำแม้ว่าจะไม่ได้ตั้งใจจะใช้ก็ตาม นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งสำหรับโปรแกรมที่ใช้ Java ซึ่งมีแนวโน้มที่จะจัดสรรหน่วยความจำล่วงหน้าสำหรับการใช้งานในอนาคต แล้วจึงปล่อยเมื่อเวลาผ่านไปหากกระบวนการอื่นร้องขอ ดังนั้นตัวเลขคงที่จึงมีความหมายเพียงเล็กน้อย การกินเกินความสามารถแล้วปล่อยไปเมื่อคนอื่นขอแทบจะไม่ถือเป็นความโลภ

หากต้องการดูว่าโปรแกรมหนึ่งๆ ใช้ไปเท่าไร เราต้องเอาส่วนที่เกินออกไปทั้งหมด นี่หมายถึงการใช้พูลหน่วยความจำทั้งหมดที่เรามี (512MB ในกรณีของเรา) แต่นี่เป็นเรื่องยากที่จะทำได้เพียงแค่เรียกใช้โปรแกรมเป็นตันๆ ในกรณีที่เลวร้ายที่สุด หากรู้สึกว่าระบบถูกอด รูทีนการฆ่าหน่วยความจำไม่เพียงพอ (OOM) จะเริ่มทำงานและฆ่ากระบวนการที่ไม่เหมาะสมที่สุด ดังนั้นเราจึงต้องการหมูความจำระยะสั้นที่จะรับทุกอย่างแล้วส่งคืน

คุณเดาถูก เราต้องการ ... เมมฮอก

เมมฮอก

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

Linux Mint ไม่มียูทิลิตีดังกล่าวในที่เก็บ แต่คุณสร้างเองได้ ดาวน์โหลดโค้ด C และคอมไพล์ นี่คือวิธีการ:

gcc -ผนัง memhog.c -o memhog

เมื่อคอมไพล์ยูทิลิตีเล็กๆ น้อยๆ แล้ว คุณเรียกใช้ดังนี้:

./memhog <หน่วยความจำ>

ตัวอย่าง:

การใช้หน่วยความจำใน Firefox 3.1 Beta 3

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

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

รายงานการใช้งานหน่วยความจำโดย ps (พร้อม memhog)

ยูทิลิตี้ ps มีตัวเลือกและค่าสถานะมากมาย ทำให้สามารถตรวจสอบทรัพยากรระบบที่ใช้ไปอย่างละเอียดถี่ถ้วน เราจะรันด้วย aux flag และตรวจสอบค่า VSZ และ RSS ในภาพหน้าจอด้านล่าง คอลัมน์เหล่านี้จะเป็นคอลัมน์ที่ห้าและหกในเอาต์พุตตามลำดับ

การอธิบายรายละเอียดโดยละเอียดของความหมายของค่า VSZ (ขนาดเสมือน) และ RSS (ขนาดชุดจริง) นั้นอยู่นอกเหนือขอบเขตของบทความนี้ แต่ฉันจะพยายามพูดให้สั้น:RSS คือรอยเท้าจริงในหน่วยความจำกายภาพและอยู่ใน VSZ . VSZ คือขนาดเสมือนของกระบวนการ ได้แก่ รหัส ข้อมูล และสแต็ก ถึงกระนั้น ค่าทั้งสองนี้จะไม่นับรวมบางส่วนของการใช้งานกระบวนการ รวมถึงเคอร์เนลสแต็ก แต่เนื่องจาก Firefox เป็นโปรแกรมสำหรับผู้ใช้เท่านั้น เราจึงไม่ควรกังวลเกี่ยวกับสิ่งเหล่านั้นมากเกินไป

เราจะกล่าวถึง VSZ และ RSS อีกเล็กน้อย เมื่อสัมผัสแผนที่หน่วยความจำ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ ps โปรดตรวจสอบหน้าคน ทีนี้ มาดูกันว่าจะเกิดอะไรขึ้นเมื่อเราเรียกใช้ Firefox ตรวจสอบการใช้งาน รัน memhog แล้วตรวจสอบการใช้งานอีกครั้ง

ไฟร์ฟอกซ์ 3.0.3:


เอาต์พุตทั้งสองอ้างถึงก่อนและหลังการรัน memhog รอยเท้าโดยรวมคือ 165MB โดยมีหน่วยความจำจริงที่ 65MB เมื่อเริ่มเย็น หลังจากเรียกใช้ memhog รอยเท้าโดยรวมยังคงเหมือนเดิม แต่หน่วยความจำจริงจะลดลงเหลือ 16.5MB

Firefox 3.1 เบต้า 3:

ค่า VSZ คือ 189MB โดยมีจริงอยู่ที่ 53MB ก่อนและ 39MB หลังจากรัน memhog ดูเหมือนว่า Firefox 3.1 Beta 3 จะจัดสรรหน่วยความจำล่วงหน้าน้อยลงเมื่อเริ่มต้น ซึ่งหมายความว่าควรมีหน่วยความจำน้อยกว่า [sic] แต่ต้องใช้พื้นฐานที่สูงกว่าจึงจะทำงานได้

นี่เป็นเหตุผลเพราะ Firefox 3.1 มีคุณสมบัติมากกว่า Firefox 3 และสิ่งเหล่านี้จะต้องได้รับการพิจารณาและรองรับในที่ใดที่หนึ่ง คุณสมบัติมากขึ้น หน่วยความจำมากขึ้น แต่ความโลภน้อยลง

หากคุณดูการใช้งาน CPU Firefox 3.1 ใช้เวลาน้อยกว่า Firefox 3 4.7% เทียบกับ 7.7% ก่อนหน้าและ 3.3% เทียบกับ 4.2% การปรับปรุง 27-64% นี่เป็นสิ่งสำคัญเช่นกัน หมายความว่า Firefox 3.1 มีน้ำหนักเบากว่าในระบบ ดังนั้นจึงควรตอบสนองได้เร็วกว่า แม้ว่าจะต้องเข้าใจหน่วยความจำจริงมากกว่า ทีนี้ มาดูแผนที่หน่วยความจำและลองคิดดูว่าเหตุใด Firefox 3.1 จึงใช้เวลามากกว่านั้น

แผนที่หน่วยความจำ

แม็พหน่วยความจำสามารถดูได้ภายใต้ /proc pseudo-filesystem สำหรับแต่ละกระบวนการแยกจากกัน ก่อนอื่น คุณต้องค้นหา ID กระบวนการ (เราทำสิ่งนี้กับ ps) จากนั้นไปที่ /proc//maps

ไฟร์ฟอกซ์ 3.0.3:

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

สำหรับตอนนี้ เราจะทำสิ่งที่ง่ายกว่านี้มาก เราจะดูจำนวนแผนที่โดยรวมที่กระบวนการใช้ ลองดูที่จำนวนทั้งหมด 455.

Firefox 3.1 เบต้า 3:

ที่นี่เรามี 472 เหตุผลที่ Firefox 3.1 ควรต้องการมากกว่านี้ใช่มั้ย

การใช้หน่วยความจำภายใต้ความเครียด

แต่การทดสอบโปรแกรมโดยเปิดแท็บเดียวโดยไม่ได้ทำอะไรเลย แทบจะไม่ใช่การทดสอบเลย ดังนั้นฉันจึงเปิด Youtube และตรวจสอบว่าแอปพลิเคชันจัดการกับ Flash ได้ดีเพียงใด โปรดทราบว่า Flash Player เป็นปลั๊กอินของบุคคลที่สามสำหรับ Firefox และมาพร้อมกับ Linux Mint ดังนั้น ฉันไม่สามารถแน่ใจได้ 100% ว่าการทดสอบ "ความเครียด" ของฉันหมายถึงอะไร แต่ถึงกระนั้น คุณอาจต้องการทราบ โปรดทราบว่า Firefox 3.1 มีประสิทธิภาพ Javascript ที่ได้รับการปรับปรุงอย่างมาก ดังที่เราได้เห็นในบทความที่แล้ว

นี่คือสิ่งที่เรามีเมื่อ Youtube กำลังเล่น Jan Hammer โดย ps รายงานการใช้งานโดยประมาณ ทุก ๆ 5 วินาที ในทั้งสองเบราว์เซอร์ เมื่อเริ่มเย็น โดยเรียกใช้ memhog ก่อนการทดสอบ

ไฟร์ฟอกซ์ 3.0.3:

หน่วยความจำคงที่ที่ 163MB (จริง 40MB) และ CPU ที่ 5.5%

ไฟร์ฟอกซ์ 3.1:

หน่วยความจำอยู่ที่ 194MB (จริง 57MB) และประมาณ ซีพียู 11% ซึ่งหมายความว่าหน่วยความจำฉลาด สิ่งต่าง ๆ ค่อนข้างเหมือนเดิม การใช้งาน CPU ที่สูงขึ้นเมื่อใช้งาน Youtube อาจบ่งชี้ว่าเบต้ายังไม่ได้รับการปรับให้เหมาะสมเพื่อใช้ไลบรารี Flash ให้เกิดประโยชน์สูงสุด ซึ่งเป็นไปตามเหตุผลเนื่องจากเครื่องยนต์ที่ได้รับการปรับปรุงใหม่อย่างมาก

อีกสิ่งหนึ่งที่ควรสังเกตคือทั้งหน่วยความจำและการใช้งาน CPU นั้นแตกต่างกันไปขึ้นอยู่กับสิ่งที่ทำในระบบ ทำให้การตัดสินที่แน่นอนเป็นเรื่องยาก แต่ฉันจะพยายามหาเหตุผลเข้าข้างตนเองในสิ่งที่เกินบรรยายทั้งหมดนี้ สุดท้าย มาดูคะแนนหน่วยความจำไม่เพียงพอ (OOM)

คะแนน OOM

คะแนน OOM เป็นตัวเลขอื่นที่รายงานโดยเคอร์เนลผ่านระบบไฟล์ /proc จะบอกคะแนนของแต่ละกระบวนการแก่ระบบ - และหากมีการผลักเข้ามาและระบบมีหน่วยความจำไม่เพียงพอ - กระบวนการใดที่ควรฆ่า คะแนนยิ่งน้อยยิ่งดี

กลไกที่แน่นอนของการทำงานของ OOM score/kill นั้นไม่สำคัญ สิ่งที่เรากำลังมองหาคือการเปรียบเทียบคะแนนระหว่าง Firefox รุ่นเก่าและรุ่นใหม่ สามารถแยกตัวเลขได้จาก /proc//oom_score ฉันตรวจสอบตัวเลขก่อนและหลัง memhog

ไฟร์ฟอกซ์ 3.0.3:

ความแตกต่างเล็กน้อยก่อนและหลัง memhog ทำงาน หมายความว่า Firefox ใช้หน่วยความจำอย่างชาญฉลาด

Firefox 3.1 เบต้า 3:

ที่นี่เราสามารถเห็นผลลัพธ์หลังจากเรียกใช้ memhog (ผลลัพธ์แรกจะคล้ายกัน)

ความแตกต่างระหว่างสองเวอร์ชันนั้นน้อยมาก โปรดทราบว่าคะแนน OOM จะมีความหมายตามลำดับความสำคัญเท่านั้น ไม่ใช่ตัวเลขที่แน่นอน ดังนั้นระบบจึงถือว่าทั้งสองเวอร์ชันค่อนข้างเหมือนกัน

ข้อสรุปสั้นๆ จนถึงตอนนี้:Firefox 3.1 ไม่ต้องการหน่วยความจำที่มากขึ้น เนื่องจากเป็นแอปพลิเคชันที่ใหญ่กว่าและมีคุณสมบัติที่มากกว่า ในทางกลับกัน จะใช้ CPU น้อยกว่าเมื่อแสดง HTML และ Javascript ซึ่งหมายความว่าคุณจะรู้สึกว่าเร็วกว่า ประสิทธิภาพของ Flash ต้องการการปรับปรุง แต่นี่เป็นสิ่งที่ทั้ง Adobe และทีม Mozilla จะต้องทำงานร่วมกัน ดูเหมือนว่ามีเหตุผลที่ฉันได้รับผลลัพธ์เหล่านี้ เนื่องจาก Flash Player ไม่ได้มีไว้สำหรับรุ่นเบต้านี้และมาพร้อมกับ distro (และเบราว์เซอร์)

นี่เป็นการสรุปส่วนของ Linux ตอนนี้เราจะตรวจสอบส่วนของ Windows

การใช้หน่วยความจำบน Windows

กรณีทดสอบ:Windows XP SP3, จำลองเสมือนบน AMD Athlon 3700+, มี RAM 768MB สำหรับเครื่องเสมือนโดยเฉพาะ, เรียกใช้ธีมแบบฝังตัวและ Firefox 3.0.7 โดยไม่มีส่วนขยายใดๆ

ส่วนนี้จะสั้นกว่าเล็กน้อยเนื่องจากทักษะการแฮ็ก Windows ของฉันค่อนข้างดี แต่ก็น้อยกว่าบน Linux นอกจากนี้ คนที่ใช้ Windows ไม่ต้องการเห็นการแฮ็กบรรทัดคำสั่งมากเกินไป ดังนั้นฉันจะละเว้นจากพวกเขา

ฉันจะใช้ยูทิลิตี้สองตัวเพื่อตรวจสอบการใช้หน่วยความจำ ตัวจัดการงานมาตรฐานและยูทิลิตี้ Process Explorer ซึ่งเป็นเครื่องมืออันทรงพลังที่สร้างโดย Sysinternals

ตัวจัดการงาน

ไฟร์ฟอกซ์ 3.0.7:

Firefox 3.1 เบต้า 3:

การใช้หน่วยความจำเกือบจะเหมือนกัน โดยมีผู้นำเล็กน้อยสำหรับเวอร์ชันปัจจุบัน 3MB โดยรวมแล้วดูเหมือนว่า Firefox จะใช้ 31-34MB โดยเปิดแท็บเดียว แต่เรารู้ว่านี่ไม่ใช่เรื่องราวทั้งหมด

ตัวสำรวจกระบวนการ

เรายังสามารถดูค่าที่คล้ายกับ VSZ และ RSS ที่เราเห็นก่อนหน้านี้สำหรับ Linux Process Explorer ยินดีรายงานให้คุณทราบ

ไฟร์ฟอกซ์ 3.0.7:

ตัวเลขที่สำคัญคือ Working Set (54MB), Virtual Size (114MB) และ Private Bytes (43MB) ไบต์ส่วนตัวคือสิ่งที่ผู้ใช้ส่วนใหญ่ต้องการอ้างถึง พื้นฐานที่แอปพลิเคชันต้องมีเพื่อให้ทำงานได้อย่างถูกต้อง ชุดการทำงานประกอบด้วยเพจเสมือนที่แมปกระบวนการ ขนาดเสมือนจริงคือรอยเท้าโดยรวมที่แอปพลิเคชันมีอยู่ในขณะนั้น

มาดูกันว่า Firefox Beta รายงานอะไรบ้าง

Firefox 3.1 เบต้า 3:

Firefox 3.1 Beta 3 บน Windows ใช้หน่วยความจำน้อยกว่า ค่าพื้นฐานต่ำกว่าที่ 25MB ชุดการทำงานอยู่ที่ 34MB และขนาดเสมือนคือ 95MB ประมาณนี้โดยรวมน้อยกว่า 20MB ผลลัพธ์เหล่านี้แตกต่างจากที่คุณได้รับบน Linux ซึ่งทำให้น่าสนใจยิ่งขึ้น

สรุป

บน Linux Firefox 3.1 Beta ใช้หน่วยความจำเพิ่มขึ้นเล็กน้อย แต่ CPU น้อยกว่ารุ่นปัจจุบัน ซึ่งหมายความว่าควรจะตอบสนองได้ดีกว่า บน Windows Firefox 3.1 Beta จะใช้เวลาประมาณ น้อยกว่าเวอร์ชันปัจจุบัน 20MB - อีกครั้งควรจะเร็วกว่านี้

แต่ตัวเลขเหล่านี้กลับไม่มีความหมายอะไรเลย!

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

นอกจากนี้ เรากำลังพูดถึงระบบปฏิบัติการที่แตกต่างกันสองระบบ สองแอปพลิเคชันที่แตกต่างกัน โดยพื้นฐานแล้ว การเปรียบเทียบโดยตรงจึงมีความหมายเพียงเล็กน้อย ในทั้งสองกรณี คาดว่า Firefox 3.1 Beta จะทำงานเร็วกว่า Firefox 3 ที่มีอยู่ เนื่องจากรูปแบบการทำงานของระบบปฏิบัติการทั้งสองระบบ โดยรวมแล้วรอยแตกต่างกันเพียงเล็กน้อยคือไม่กี่สิบ MB ซึ่งอาจจะไม่เปลี่ยนแปลงมากนักในการใช้งานในแต่ละวัน อย่างไรก็ตาม คุณจะรู้สึกว่าประสิทธิภาพ Javascript เพิ่มขึ้น 30% เมื่อรวมกับการใช้งาน CPU ที่น้อยลง คุณจะเพลิดเพลินไปกับเบราว์เซอร์ที่เร็วขึ้น

บน Linux การใช้งาน Flash ยังไม่ได้รับการปรับให้เหมาะสม

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

อย่างไรก็ตาม คุณได้เรียนรู้วิธีเล่นกับสิ่งที่เกินบรรยาย เช่น memhog, ยูทิลิตี้ ps, แผนที่ และอื่นๆ ดังนั้นบทช่วยสอนนี้จึงไม่ได้ไร้คุณค่าเพิ่มเติม แค่นั้นแหละ ขอให้สนุก!

ไชโย