วิธี จำกัด ความเร็วในการเขียน HDD สำหรับโปรแกรมที่เลือก


23

HDD ของฉันช้า 5400RPM และเมื่อทำงานกับไฟล์ขนาด 10GB มันเป็นไปไม่ได้ที่จะใช้คอมพิวเตอร์จนกว่าไฟล์ขนาดใหญ่จะสร้างสำเนา / muxing / write / etc ใหม่ ขึ้นอยู่กับกระบวนการสิ่งที่มันกินความเร็ว HDD ทั้งหมดและไม่มีโปรแกรมอื่นสามารถใช้ในขณะที่กระบวนการนี้ทำงาน

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


2
ฉันไม่เคยได้ยิน HDD IO ที่ควบคุมปริมาณมาใช้ใน Windows อย่างน้อยก็เป็นทางตรง คุณลองตั้งค่าลำดับความสำคัญของกระบวนการหรือไม่:wmic process where name="calc.exe" CALL setpriority "idle"
Marcelo

@Marcelo Priority บอกเวลา CPU ไม่ใช่ดิสก์ เมื่อประมวลผลไฟล์ขนาดใหญ่ดิสก์คือสิ่งที่ทำให้คอมพิวเตอร์ทำงานช้าลงไม่ใช่ CPU
Keltari

2
ที่เกี่ยวข้อง: superuser.com/questions/462541/…
Cees Timmerman

@Keltari ใช่ฉันรู้แล้ว ฉันแค่คิดว่าอาจจะปรับเปลี่ยนลำดับความสำคัญสำหรับ CPU อาจจะมีบางอย่างที่ส่งผลกระทบต่อวัตถุประสงค์สุดท้ายในคำถาม
Marcelo

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

คำตอบ:


13

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

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

ตัวเลือกที่ดีที่สุดของคุณคือการหาไดรฟ์อื่นและทำงานในไดรฟ์นั้นทิ้งไดรฟ์แรกสำหรับอินเทอร์เน็ต MP3 และอื่น ๆ

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


2
Linux เวอร์ชัน Windows จะไม่ioniceเข้าใกล้คำตอบหรือไม่?
Daniel Beck

@DanielBeck อาจมีซอฟต์แวร์ที่อาจใช้งานได้ อย่างไรก็ตามใครจะรู้ว่าอาจเกิดภาวะแทรกซ้อนอะไรบ้างจากการใช้? มันจะเป็นเช่นนั้นง่ายมากเพียงแค่ตบไดรฟ์อื่นและจะทำเกี่ยวกับปัญหา
Keltari


1
ฉันไม่เห็นเหตุผลใด ๆ ที่ทำให้แอปพลิเคชันไม่สามารถควบคุมปริมาณได้ นี่คือเค้นที่ง่ายมาก: หยุดกระบวนการเป็นเวลา 1 วินาทีทุกวินาที throttles IO นั้นประมาณ 50% และให้กระบวนการอื่นลื่นไหลในการใช้ดิสก์ เวลาในการค้นหาอยู่ที่ 10 มิลลิวินาที
usr

@usr: ขึ้นอยู่กับประเภทและความถี่ของ I / O วิธีการของคุณใช้งานได้ในบางกรณี แต่ไม่ใช่วิธีอื่น - เช่นถ้า I / O เกิดขึ้นในโหมดเคอร์เนลฉันไม่คิดว่าคุณจะหยุดมันได้เสมอโดยหยุดกระบวนการโหมดผู้ใช้ชั่วคราว
Mehrdad

9

กระบวนการ Lassoช่วยให้คุณสามารถจัดลำดับความสำคัญของ I / O จากคำถามที่พบบ่อยของพวกเขา:

ใหม่ใน v4.1 (v4.09 เบต้า) Process Lasso มีการตั้งค่าลำดับความสำคัญ I / O ปัจจุบันและค่าเริ่มต้นที่ชัดเจนพร้อมใช้งานสำหรับผู้ที่ต้องการ สิ่งนี้ใช้ได้กับ NT6 + (Vista, Win7, ... )

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

ดังนั้นการปรับระดับความสำคัญของเธรดจะแพร่กระจายไปยัง I / O ของเธรดนั้น ด้วยวิธีนี้ Process Lasso ทำลำดับความสำคัญของ I / O ไว้แล้ว Microsoft แนะนำให้แอปพลิเคชันปรับลำดับความสำคัญของ I / O ของตนตามการตั้งค่าลำดับความสำคัญของเธรดการโทร (โดยตรงหรือโดยการปรับปรุงคลาสพื้นฐานระดับความสำคัญของกระบวนการ)

ดูเพิ่มเติมกระดาษบน I / O ที่จัดลำดับความสำคัญจากไมโครซอฟท์


1

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

ในทางตรงกันข้ามถ้าคุณสามารถทำกระบวนการของคุณใน Cygwin คุณสามารถติดตั้งpvบนคอมพิวเตอร์ของคุณและใช้เป็นขั้นตอนแรกหรือขั้นตอนสุดท้ายพร้อมตัวเลือก (ฉันคิดว่ามันเป็น -r) ถึงอัตราการส่งออกของ pv

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