ประโยชน์หรือความเสียหายใด ๆ จากการลบ pagefile บนเครื่อง RAM 8 GB?


213

ฉันใช้ Windows 7 กับดูอัลคอร์, x64 AMD พร้อม 8GB RAM

ฉันจำเป็นต้องมีไฟล์หน้าหรือไม่?

การลบจะช่วยหรือทำให้ประสิทธิภาพเสียหายหรือไม่

มันจะสร้างความแตกต่างถ้าเป็นเซิร์ฟเวอร์หรือเดสก์ท็อป?

Windows 7 กับ Windows 2008 สร้างความแตกต่างกับไฟล์หน้าหรือไม่?

คำตอบ:


299

TL; DR version: ให้ Windows จัดการการตั้งค่าหน่วยความจำ / pagefile ของคุณ ผู้คนที่ MS ใช้เวลามากขึ้นในการคิดถึงปัญหาเหล่านี้มากกว่าพวกเราส่วนใหญ่

ดูเหมือนว่าหลายคนคิดว่า Windows ส่งข้อมูลไปยัง pagefile ตามต้องการ EG: มีบางสิ่งที่ต้องการหน่วยความจำจำนวนมากและมี RAM ไม่เพียงพอที่จะตอบสนองความต้องการดังนั้น Windows จึงเริ่มเขียนข้อมูลจาก RAM ไปยังดิสก์ในนาทีสุดท้ายเพื่อให้สามารถเพิ่ม RAM สำหรับความต้องการใหม่ได้

สิ่งนี้ไม่ถูกต้อง เกิดอะไรขึ้นภายใต้ประทุน โดยทั่วไปแล้ว Windows จะเก็บข้อมูลสำรองไว้ซึ่งหมายความว่าต้องการเห็นทุกสิ่งที่อยู่ในหน่วยความจำบนดิสก์ ตอนนี้เมื่อมีบางสิ่งเข้ามาและต้องการหน่วยความจำจำนวนมาก Windows สามารถล้าง RAM ได้อย่างรวดเร็วเนื่องจากข้อมูลนั้นอยู่ในดิสก์อยู่แล้วพร้อมที่จะทำการเพจกลับสู่ RAM หากมีการเรียกใช้ ดังนั้นจึงอาจกล่าวได้ว่ามากของสิ่งที่อยู่ใน pagefile เป็นยังในแรม; ข้อมูลถูกวางไว้ล่วงหน้าใน pagefile เพื่อเพิ่มความเร็วในการจัดสรรหน่วยความจำใหม่

การอธิบายกลไกเฉพาะที่เกี่ยวข้องจะมีหลายหน้า (ดูบทที่ 7 ของWindows Internalsและโปรดทราบว่าอีกไม่นานจะมีรุ่นใหม่ ) แต่มีสิ่งดีๆที่ควรทราบ อันดับแรกสิ่งที่อยู่ใน RAM ส่วนใหญ่อยู่ในดิสก์อยู่แล้ว - รหัสโปรแกรมที่ดึงมาจากไฟล์ที่เรียกใช้งานได้หรือ DLL เป็นต้น ดังนั้นสิ่งนี้ไม่จำเป็นต้องเขียนลงใน pagefile Windows สามารถติดตามว่าบิตถูกดึงมาจากที่ใด ข้อที่สอง Windows จะติดตามว่าข้อมูลใดใน RAM ที่ถูกใช้บ่อยที่สุดและจะล้างข้อมูลจาก RAM ซึ่งข้อมูลนั้นยาวที่สุดโดยไม่ถูกเข้าถึง

การลบ pagefile ออกทั้งหมดอาจทำให้ดิสก์มีปัญหามากขึ้น ลองนึกภาพสถานการณ์ง่าย ๆ ที่แอพบางตัวเปิดใช้งานและต้องการ RAM 80% ที่มีอยู่ สิ่งนี้จะบังคับให้โค้ดที่ใช้งานได้ในปัจจุบันหมด RAM - อาจเป็นไปได้ว่ารหัส OS ตอนนี้ทุกครั้งที่แอพอื่น ๆ - หรือระบบปฏิบัติการของตัวเอง (!!) ต้องการการเข้าถึงข้อมูลนั้นระบบปฏิบัติการจะต้องเปิดหน้าเว็บเหล่านั้นจากที่เก็บข้อมูลสำรองบนดิสก์ เนื่องจากไม่มี pagefile เพื่อใช้เป็นที่เก็บข้อมูลสำรองสำหรับข้อมูลชั่วคราวสิ่งเดียวที่สามารถทำเพจได้คือไฟล์เรียกทำงานและ DLL ที่มีที่เก็บข้อมูลสำรองโดยธรรมชาติเริ่มต้นด้วย

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

อ้างอิงบางส่วน:

dmo บันทึกโพสต์ล่าสุดของEric Lippertซึ่งช่วยในการทำความเข้าใจเกี่ยวกับหน่วยความจำเสมือน (แม้ว่าจะเกี่ยวข้องกับคำถามน้อยลง) ฉันวางมันไว้ที่นี่เพราะฉันสงสัยว่าบางคนจะไม่เลื่อนลงไปหาคำตอบอื่น ๆ - แต่ถ้าคุณคิดว่ามันมีค่าคุณควรเป็นคะแนนโหวตดังนั้นใช้ลิงก์เพื่อไปที่นั่น!


25
สำหรับเจฟฟ์และโจเอล: มันคล้องจองกับ "เป็ด"
quux

2
บนโซลาริสมัน / มีส่วนร่วมมากขึ้น ไฟล์สวอปนั้นน่าอัศจรรย์ใน ram disk เช่น tmpfs ดังนั้นหน่วยความจำเกือบเต็ม - แต่เห็นได้ชัดว่ามันเป็นกลยุทธ์ที่ดีที่สุด
Martin Beckett

2
ฉันเชื่อมานานว่าแทนที่จะอนุญาตให้ Windows จัดการขนาดหน้าไฟล์ของฉันฉันควรตั้งให้เป็นจำนวนคงที่ (เช่นขั้นต่ำ 2GB, สูงสุด 2GB) เพราะการปล่อยให้มันขยายและหดอาจทำให้เกิดปัญหาการแตกแฟรกเมนต์ เป็นความคิดที่ดีหรือฉันควรทำตามบรรทัดแรกของคุณและให้ Windows จัดการทุกอย่างได้หรือไม่
John Fouhy

2
@ Mehrdad: เพราะคุณไม่ต้องการให้ RAM ของคุณว่าง 50% แน่นอนว่าคุณสามารถทำเช่นนั้นได้ แต่คุณจะสูญเสียแรมทางกายภาพ 50% ที่คุณอาจใช้เป็นแคชดิสก์สำหรับข้อมูลที่ใช้งานอยู่ Free RAM เป็นสัญลักษณ์ของความไร้ประสิทธิภาพเหมือนรถบรรทุก FedEx ที่สถานีแทนที่จะเป็นบนท้องถนน นั่นหมายความว่าคุณไม่ได้ขนส่งสินค้ามากเท่าที่จะทำได้เพราะคุณใช้เวลาโหลดและขนถ่ายมากเกินไป
David Schwartz

2
@ Mehrdad: ปัญหาคือไม่มีไฟล์หน้ามีข้อมูลจำนวนมากที่จะต้องเก็บไว้ใน RAM แม้ว่ามันอาจจะไม่เคยเข้าถึงเคย ตัวอย่างเช่นพิจารณาว่าหน่วยความจำใด ๆ ที่จัดสรรโดยกระบวนการที่เริ่มต้นเมื่อเริ่มต้นระบบ แต่ให้บริการที่จะไม่ใช้งานเป็นวัน ระบบไม่สามารถพิสูจน์ข้อมูลที่จะไม่สามารถเข้าถึงได้และมันไม่มีที่อื่นนอกจาก RAM ที่จะเก็บไว้ ดังนั้นแคชดิสก์จะลดขนาดลงในขณะที่ข้อมูลถูกเก็บไว้ใน RAM ที่ไม่ได้เข้าถึงมาหลายวัน
David Schwartz

80

Eric Lippert เพิ่งเขียนรายการบล็อกอธิบายวิธี Windows จัดการหน่วยความจำ กล่าวโดยสรุปแล้วหน่วยความจำ Windows รุ่นนี้สามารถใช้เป็นที่เก็บดิสก์ซึ่ง RAM ทำหน้าที่เป็นแคชเพิ่มประสิทธิภาพ


47

เท่าที่ฉันเห็นจากคำตอบอื่น ๆ ฉันเป็นคนเดียวที่ปิดการใช้งานไฟล์หน้าและไม่เคยเสียใจ ยอดเยี่ยม :-)

ทั้งที่บ้านและที่ทำงานฉันมี Vista 64-bit พร้อม RAM 8 GB ทั้งคู่ปิดใช้งานไฟล์หน้า ที่ทำงานไม่มีอะไรผิดปกติที่ฉันจะมีอินสแตนซ์ของ Visual Studio 2008, พีซีเสมือนที่ใช้ Windows XP, อินสแตนซ์ของ SQL Server 2 และ Internet Explorer 8 ที่มีแท็บจำนวนมากทำงานร่วมกัน ฉันไม่ค่อยถึง 80% ของหน่วยความจำ

ฉันยังใช้ไฮบริดสลีปทุกวัน (ไฮเบอร์เนตกับการนอนหลับ) โดยไม่มีปัญหาใด ๆ

ฉันเริ่มทดลองกับมันเมื่อฉันมี Windows XP พร้อม RAM 2 GB และฉันเห็นความแตกต่างจริงๆ ตัวอย่างคลาสสิกคือเมื่อไอคอนในแผงควบคุมหยุดแสดงตัวเองทีละรายการ แต่ทั้งหมดในครั้งเดียว เวลาเริ่มต้น Firefox / Thunderbird ก็เพิ่มขึ้นอย่างมากเช่นกัน ทุกอย่างเริ่มทำงานทันทีหลังจากฉันคลิกที่บางสิ่งบางอย่าง น่าเสียดายที่ 2 GB มีขนาดเล็กเกินไปสำหรับการใช้งานแอปพลิเคชันของฉัน (Visual Studio 2008, Virtual PC และ SQL Server) ดังนั้นฉันจึงเปิดใช้งานมันกลับมา

แต่ตอนนี้มี 8 GB ฉันไม่ต้องการกลับไปเปิดใช้งานไฟล์หน้า

สำหรับผู้ที่พูดถึงกรณีที่รุนแรงใช้เวลานี้จาก Windows XP ของฉันครั้ง
เมื่อคุณพยายามโหลด Pivot Table ขนาดใหญ่ใน Excel จากแบบสอบถาม SQL, Excel 2000 เพิ่มการใช้หน่วยความจำอย่างรวดเร็ว
เมื่อคุณปิดใช้งานไฟล์หน้า - คุณรอสักครู่แล้ว Excel จะระเบิดและระบบจะล้างหน่วยความจำทั้งหมดหลังจากนั้น
เมื่อคุณเปิดใช้งานไฟล์หน้า - คุณรอสักครู่และเมื่อคุณสังเกตเห็นว่ามีบางอย่างผิดปกติคุณไม่สามารถทำอะไรกับระบบของคุณได้เลย HDD ของคุณทำงานเหมือนตกนรกและแม้ว่าคุณจะจัดการเรียกใช้ตัวจัดการงาน (หลังจากexcel.exeรอสักครู่) และฆ่าคุณจะต้องรอเป็นนาทีจนกว่าระบบจะโหลดทุกอย่างกลับมาจากไฟล์หน้า
อย่างที่ฉันเห็นในภายหลัง Excel 2003 จัดการตารางสาระสำคัญเดียวกันโดยไม่มีปัญหากับไฟล์หน้าถูกปิดใช้งาน - ดังนั้นจึงไม่ใช่ "ปัญหาชุดข้อมูลที่มีขนาดใหญ่เกินไป"

ดังนั้นในความคิดของฉันไฟล์เพจที่ถูกปิดการใช้งานแม้จะปกป้องคุณจากแอปพลิเคชันที่เขียนไม่ดี

ไม่นาน: หากคุณตระหนักถึงการใช้หน่วยความจำ - คุณสามารถปิดการใช้งานได้อย่างปลอดภัย

แก้ไข:ฉันต้องการเพิ่มว่าฉันติดตั้ง Windows Vista SP2 โดยไม่มีปัญหาใด ๆ


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

7
+1, "ฉันด้วย" :-) เรื่องเดียวกัน - หน่วยความจำ 8GB, Vista x64, เรียกใช้ Visual Studio พร้อม ReSharper + SQL Server Express + IIS + 1-2 เครื่องเสมือน (แต่ละเครื่องมีหน่วยความจำ 1500MB) + สาธารณูปโภคมากมาย - ไม่เคยมีปัญหา
Milan Gardian

21
ฉันชอบที่ทุกคนพูดว่า "Microsoft ใช้เวลาหลายชั่วโมงคิดเกี่ยวกับปัญหานี้ดังนั้นอย่ายุ่งกับมัน" แต่ไม่สนใจประสบการณ์ในโลกแห่งความเป็นจริงอย่างสิ้นเชิง ฉันปิดใช้งานไฟล์เพจจิ้งตั้งแต่ XP และไม่เคยเสียใจเลย มันเหมือนกับคอมพิวเตอร์ได้รับการฉีดที่ยอดเยี่ยม
AngryHacker

4
มันเป็นวิธีการมาตรฐานในการปิดใช้งานการเพจบนเซิร์ฟเวอร์ที่บูต iSCSI การเพจผ่าน SAN จะสังเกตเห็นได้ช้า คุณเพียงแค่ต้องดูการใช้งานหน่วยความจำของคุณและอยู่ห่างจากสูงสุด
Chris S

6
-1 ฉันไม่เห็นการอ้างอิงใด ๆ ในคำตอบนี้ ที่จริงฉันมีระบบล่มเพราะไฟล์หน้าถูกปิดใช้งานและหน่วยความจำ Paged Pool ของฉันเต็ม กระนั้นการใช้งานหน่วยความจำทางกายภาพของฉันมีเพียง 2 GB ...
Tamara Wijsman

34

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

Perfmon เป็นเครื่องมือสำหรับสิ่งนี้ ไม่ใช่ตัวจัดการงาน เคาน์เตอร์ที่สำคัญคือหน่วยความจำ - หน้า Input การทำเช่นนี้จะทำกราฟข้อผิดพลาดของหน้าฮาร์ดโดยเฉพาะซึ่งต้องการการอ่านจากดิสก์ก่อนที่กระบวนการจะสามารถดำเนินการต่อไปได้ ความผิดพลาดของหน้าซอฟต์ (ซึ่งส่วนใหญ่เป็นรายการกราฟในตัวนับหน้าผิดปกติ / วินาทีฉันขอแนะนำให้ละเว้นตัวนับนั้น!) ไม่ใช่ปัญหาจริงๆ พวกเขาเพียงแค่แสดงรายการที่อ่านจาก RAM ตามปกติ

กราฟ Perfmon http://g.imagehost.org/0383/perfmon-paging.png

ด้านบนเป็นตัวอย่างของระบบที่ไม่ต้องกังวลหน่วยความจำที่ชาญฉลาด บางครั้งมีข้อผิดพลาดที่ยากมาก - สิ่งเหล่านี้ไม่สามารถหลีกเลี่ยงได้เนื่องจากฮาร์ดดิสก์มีขนาดใหญ่กว่า RAM เสมอ แต่กราฟนั้นค่อนข้างแบนที่ศูนย์ ดังนั้นระบบปฏิบัติการจึงเพจจากการสำรองข้อมูลไม่ค่อยมาก

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

ตัวนับเพิ่มเติมที่สะดวกในการตรวจสอบคือPhysicalDisk - Avg Queue Length (ทุกกรณี) นี่จะแสดงว่าการเปลี่ยนแปลงของคุณมีผลต่อการใช้งานดิสก์มากแค่ไหน ระบบมีความประพฤติดีจะแสดงค่าเฉลี่ยนับนี้วันที่ 4 หรือน้อยกว่าต่อแกน


1
อ้าปากค้างแม้ใครบางคนกำลังออกนอกเส้นทางเพื่อสาธิตวิธีการตรวจสอบไฟล์ swap น่ากลัว
cgp

1
ลิงก์ไปที่รูปภาพ ความต้องการคงที่
kinokijuf

ใช่"ImageHost.org ถูกปิด"
Peter Mortensen

34

ฉันใช้กล่อง 8 GB Vista x64 ของฉันโดยไม่มีไฟล์หน้าเป็นเวลาหลายปีโดยไม่มีปัญหาใด ๆ

ปัญหาเกิดขึ้นเมื่อฉันใช้ความจำของฉันจริงๆ!

สามสัปดาห์ที่ผ่านมาฉันเริ่มแก้ไขไฟล์รูปภาพขนาดใหญ่ (~ 2 GB) ใน Photoshop การแก้ไขหนึ่งครั้งจะทำให้ความจำของฉันหมดลง ปัญหา: ฉันไม่สามารถบันทึกงานของฉันได้เนื่องจาก Photoshop ต้องการหน่วยความจำเพิ่มเติมเพื่อบันทึกไฟล์!

และเนื่องจากเป็น Photoshop เองซึ่งกินหน่วยความจำหมดฉันจึงไม่สามารถเพิ่มหน่วยความจำได้โดยการปิดโปรแกรม (ดีฉันทำ แต่มันน้อยเกินไปที่จะได้รับความช่วยเหลือ)

ทั้งหมดที่ฉันทำได้คือเรื่องที่สนใจงานของฉันเปิดใช้งานไฟล์หน้าของฉันและทำซ้ำงานทั้งหมดของฉัน - ฉันทำงานหนักเนื่องจากเรื่องนี้และไม่สามารถแนะนำให้ปิดการใช้งานไฟล์หน้าของคุณ

ใช่มันใช้งานได้ดีเกือบตลอดเวลา แต่ช่วงเวลาที่มันแตกมันอาจจะเจ็บปวด


7
คุณควรประหยัดบ่อยขึ้น: D เพื่อลดความเสียหาย
alexandrul

1
พูดง่ายเมื่อบันทึกจะใช้เวลาหลายนาทีนี่คือไฟลนก้น
Sam

เราทุกคนมีความสุขถ้าคุณใช้ซอฟต์แวร์ที่ซับซ้อนมากขึ้น แต่บางครั้ง "ความล้มเหลว" ก็จบลงที่สอดคล้องกับ "โอ้อึฉันไม่ได้บันทึกในขณะที่"
Damon

19

ในขณะที่คำตอบที่นี่ครอบคลุมหัวข้อค่อนข้างดี แต่ฉันจะยังคงแนะนำให้อ่าน:

http://blogs.technet.com/markrussinovich/archive/2008/11/17/3155406.aspx

เขาพูดเกี่ยวกับขนาด PF เกือบจะในตอนท้าย:

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

ฉันชอบบทความของมาร์คมาก


+1 ง่ายสำหรับลิงก์ Mark Russinovich เป็นมูลค่าที่ชี้ให้เห็นว่า win7 ยังปรากฏขึ้นการแจ้งเตือนเพื่อชี้ให้เห็นว่าคุณจะไม่สามารถ "ติดตามปัญหาของระบบ" หากคุณปิดการใช้งานไฟล์ swap
cgp

13

คำตอบที่ดีที่สุดที่ฉันคิดได้ก็คือภายใต้ภาระปกติคุณไม่สามารถใช้งานได้ถึง 8 GB แต่เป็นโหลดที่ไม่คาดคิดซึ่งคุณจะประสบปัญหา

ด้วยไฟล์หน้าระบบจะทำงานช้าอย่างน้อยเมื่อเริ่มกดปุ่มหน้า แต่ถ้าคุณลบไฟล์หน้ามันก็จะตาย (จากสิ่งที่ฉันรู้)

ยิ่งไปกว่านั้น 8 GB ดูเหมือนตอนนี้มาก แต่ไม่กี่ปีที่ผ่านมาก็อาจได้รับการพิจารณาจำนวนหน่วยความจำขั้นต่ำสำหรับซอฟต์แวร์จำนวนมาก

ไม่ว่าจะด้วยวิธีใด - ฉันแนะนำให้เก็บไฟล์หน้าเล็กอย่างน้อย แต่คนอื่น ๆ โปรดแก้ไขให้ฉันถ้าฉันออกจากฐาน


4
ฉันจะไปอีกสักหน่อยและไม่ต้องปิดบังหน้าไฟล์ นั่นไม่ใช่การปรับปรุงสิ่งต่างๆ ให้หน้าต่างทำ ... พวกเขารู้ดีกว่า
Michael Haren

1
เพิ่งลองใช้ Media Player Classic เพื่อโหลดไฟล์ 6GB mkv มันทำให้ฉันหมด RAM และหน่วยความจำ pagefile ของฉัน กลับไปใช้ VLC ค่อนข้างเร็ว +1 สำหรับ "คุณไม่มีทางรู้ว่าจะเจออะไร" ในที่สุด MPC crashed และ RAM ของฉันถูกกู้คืน แต่ถ้าคุณได้รับ DLL ในซอฟต์แวร์ของ บริษัท อื่นที่มีหน่วยความจำรั่ว คุณจะมีระยะทางมากขึ้นหากคุณมีหน่วยความจำดิสก์สำรองเพื่อช่วยคุณ
mpbloch

1
นอกจากนี้ประเด็นที่ดีของการมี 8GB ถ้าคุณต้องใช้ชีวิตด้วยความกลัวว่าจะใช้มันจริง ๆ !
David Schwartz

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

6

คุณไม่ได้พูดถึงว่าเป็น Windows รุ่น 64 บิต แต่ฉันเดาว่าใช่

pagefile ให้บริการหลายสิ่งรวมถึงการสร้างการถ่ายโอนข้อมูลหน่วยความจำในกรณีของBSoD (Blue Screen of Death)

หากคุณไม่มี pagefile Windows จะไม่สามารถเลื่อนหน้าออกไปยังดิสก์ได้หากมีหน่วยความจำไม่เพียงพอ คุณอาจคิดว่าขนาด 8 GB คุณจะไม่ถึงขีด จำกัด นั้น แต่คุณอาจมีโปรแกรมที่ไม่ดีรั่วหน่วยความจำเมื่อเวลาผ่านไป

ฉันคิดว่ามันจะไม่ปล่อยให้คุณจำศีล / สแตนด์บายหากไม่มีไฟล์เพจ (แต่ฉันยังไม่ได้ลอง)

Windows 7/2008 / Vista ไม่เปลี่ยนการใช้ไฟล์หน้า

ฉันเห็นคำอธิบายอย่างหนึ่งจาก Mark Russinovich (Microsoft Fellow) อธิบายว่า Windows อาจช้าลงได้โดยไม่ต้องใช้ไฟล์หน้ามากกว่าไฟล์หน้า (แม้มี RAM มากมาย) แต่ฉันไม่สามารถหาสาเหตุที่แท้จริงได้

คุณออกจากพื้นที่ดิสก์แล้ว ฉันจะเก็บขั้นต่ำ 1 GB เพื่อให้สามารถมีเคอร์เนลดัมพ์ในกรณีของ BSoD


คุณหมายถึงสิ่งนี้หรือไม่ blogs.technet.com/markrussinovich/archive/2008/11/17/… ถ้าเป็นเช่นนั้นคำแนะนำของเขาก็อ่อนแอ เขาบอกว่าไฟล์หน้าจะเพิ่มประสิทธิภาพเพราะถ้าจะให้ ram มากกว่าแอพอื่น ๆ จริงถ้าคุณไม่มีแกะเยอะ แต่ถ้าคุณมีมากเกินพอไฟล์หน้าจะไม่เร็วขึ้น
Pyrolistical

มันอยู่ในวิดีโอที่มีการควบคุมร่วมกับซาโลมอน มันมีบางอย่างเกี่ยวกับ Pool page kernel
Mathieu Chateau

คุณไม่สามารถโพสต์คำตอบ "" เมื่อคุณไม่มีความคิด: ฉันมีแล็ปท็อป Windows Vista 32 บิตพร้อม RAM 4GB และวางไว้ในโหมดเตรียมพร้อมตลอดเวลา อย่างน้อยคุณสามารถ จำกัด ตัวเองให้จัดหาคำตอบสำหรับคำถามที่คุณรู้คำตอบจริงหรือไม่?
PP

สิ่งที่ PP พยายามพูด: กระบวนการไฮเบอร์เนตใช้ไฟล์แยกต่างหากจากไฟล์สลับดังนั้นจึงไม่มีปัญหาในกรณีนี้
mafu

ซึ่งอาจจะสายเกินไปสำหรับคุณที่จะเห็นสิ่งนี้ แต่เปลี่ยนคำพูดของคุณไปรอบ ๆ และพูดประโยคนี้เป็นคำถาม: pagefile จะช้าลงเมื่อไหร่? คำตอบที่ดีที่จะพิสูจน์ทฤษฎีของคุณ
quux

5

ฉันปิดการใช้งานไฟล์หน้าของฉัน (8 GB บนแล็ปท็อป x86) และมีปัญหาสองข้อแม้ว่าจะฟรี 2500 MB:

  1. ข้อผิดพลาด ASP.NET พยายามเปิดใช้งานบริการ WCF : การตรวจสอบประตูหน่วยความจำล้มเหลวเนื่องจากหน่วยความจำว่าง (399,556,608 ไบต์) น้อยกว่า 5% ของหน่วยความจำทั้งหมด เป็นผลให้บริการจะไม่สามารถใช้ได้สำหรับการร้องขอที่เข้ามา ในการแก้ไขปัญหานี้ให้ลดภาระของเครื่องหรือปรับค่า minFreeMemoryPercentageToActivateService บนบริการองค์ประกอบการกำหนดค่าโฮสต์สภาพแวดล้อม

    ค่อนข้าง 3.7 GB น้อยกว่า 5% ของ 8 GB ฉันจะไม่มีทางรู้ !!

  2. การปิดโปรแกรมเพื่อป้องกันกล่องโต้ตอบการสูญเสียข้อมูล : เมื่อใช้ 75% ของ RAM ฉันได้รับกล่องโต้ตอบแจ้งให้ฉันปิดโปรแกรม คุณสามารถปิดการใช้งานได้ด้วยการแก้ไขรีจิสตรี (หรืออาจปิดการใช้งาน 'บริการนโยบายการวินิจฉัย')

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


1
ข้อผิดพลาดของ ASP.NET ทำให้ฉันดูเหมือนว่าเป็นปัญหาแบบ 32 บิต แต่ถ้าหมายเลขที่คุณระบุนั้นถูกต้อง (399556608 = 399,556,608) แสดงว่าข้อผิดพลาดนั้นถูกต้อง - ~ 400MB อยู่ที่ประมาณ 5% ของ 8GB
fencepost

@ francepost good catch - ต้องอ่านว่า kb ด้วยเหตุผลบางอย่าง แปลก
Simon

5

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

เสถียรภาพที่อาจมีค่าลดลงเพื่อประหยัดเงินเพียงเล็กน้อยในฮาร์ดดิสก์ขนาดเล็กหรือไม่?

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

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


2

หน่วยความจำทั้งหมดที่มีอยู่คือ pagefile + หน่วยความจำจริง

คำถามสำคัญคือการใช้งานหน่วยความจำโดยรวมที่คุณคาดไว้สำหรับแอพทั้งหมดและการใช้งานระบบปฏิบัติการใกล้ถึง 8 GB หรือไม่ หากการใช้ mem เฉลี่ยของคุณคือ 2 GB และการใช้หน่วยความจำสูงสุดของคุณเพียง 4 GB การมีไฟล์เพจนั้นไม่มีจุดหมาย หากการใช้หน่วยความจำสูงสุดของคุณใกล้ถึง 6-7 Gb หรือมากกว่านั้นขอแนะนำให้มีไฟล์เพจ

PS: อย่าลืมอนุญาตให้มีการเติบโตในอนาคต!


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

โปรดทราบว่านอกจากนี้ยังมี Paged Pool Memory ซึ่งสามารถทำให้หมดสิ้นได้แม้ว่าคุณจะใช้หน่วยความจำกายภาพ 2 GB เท่านั้น
Tamara Wijsman

2

ดูเหมือนว่าคนจำนวน จำกัด อย่างรุนแรงมีความเห็นเกี่ยวกับเรื่องนี้ แต่ไม่เคยลองใช้คอมพิวเตอร์โดยไม่มีไฟล์หน้า

มีเพียงไม่กี่รายเท่านั้นที่ลองใช้ดู แม้แต่น้อยดูเหมือนจะรู้ว่า Windows ปฏิบัติกับ pagefile อย่างไร มันไม่ได้ "เพียงแค่" เติมเมื่อคุณหมดแรมทางกายภาพ ฉันเดิมพันว่าคุณส่วนใหญ่ไม่รู้ด้วยซ้ำว่า RAM "ฟรี" ของคุณถูกใช้เป็นแคชไฟล์!

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

หาก Microsoft อนุญาตให้คุณตั้งค่าตัวเลือกที่ pagefile จะถูกใช้เมื่อออกจาก RAM จริง (และบัฟเฟอร์ไฟล์ทั้งหมดถูกทิ้ง) แล้วฉันคิดว่าจะมีกำไรเล็กน้อยจากการปิดใช้งาน pagefile


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

-3

นี่คือสิ่งที่ต่อต้าน แต่เราเรียกใช้เซิร์ฟเวอร์เทอร์มินัลเซิร์ฟเวอร์ของ Windows Server 2003 สำหรับผู้ใช้ประมาณ 20 คนโดยมี 10-15 ล็อกอินในเวลาและมี RAM 8 GB เราไม่ได้ทำงานกับไฟล์หน้าและเซิร์ฟเวอร์ของเราจะทำงานเร็วกว่าที่เคยทำมาก่อน เห็นได้ชัดว่านี่ไม่ใช่วิธีแก้ปัญหาสำหรับทุกสิ่ง แต่เราทำงานแบบนี้มาสองปีแล้วและไม่มีปัญหาที่ฉันรู้


1
คุณมีปัญหา แต่คุณไม่สังเกตเห็นพวกเขาพิจารณาว่าการโหลดหน่วยความจำที่เพิ่มขึ้นสามารถชะลอคำขอพร้อมกันได้อย่างไร การเปิดใช้งานไฟล์หน้าจะทำให้ช่วงเวลาดังกล่าวน่าสนใจยิ่งขึ้น ...
Tamara Wijsman
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.