16Aug

למה מוצק המדינה כוננים להאט כפי שאתה למלא אותם

המדדים ברורים: כונני מצב מוצק מאטים בעת מילוים.מלא את כונן מצב מוצק שלך קיבולת קרוב וביצוע הכתיבה שלה יקטן באופן דרמטי.הסיבה שקרים בדרך SSDs ו- NAND פלאש אחסון עבודה.

מילוי הכונן לקיבולת הוא אחד הדברים שאתה לא צריך לעשות עם כונן מצב מוצק.כונן כמעט מלא מצב מוצק יהיה הרבה יותר לאט לכתוב פעולות, להאט את המחשב.

בלוקים ריקים ובלוקים מלאים חלקית

בעת כתיבת קובץ לכונן מצב מוצק, הוא מחפש בלוקים ריקים וממלא אותם.כתיבה לבלוק ריק היא פעולת הכתיבה המהירה ביותר האפשרית.לכן מערכות הפעלה חדשות( Windows 7 ואילך) תומכות בתכונת ה- TRIM, שמחקרת אוטומטית את נתוני הקובץ מכונן מצב מוצק מיד עם מחיקת הקובץ במערכת ההפעלה.זה עובד אחרת מ כוננים קשיחים מגנטיים, שבו חתיכות של קבצים שנמחקו לשבת על הכונן הקשיח.

הם לא יושבים על כונן מצב מוצק - TRIM מבטיח שהבלוק מתרוקן כך שה- SSD יכול לכתוב במהירות נתונים חדשים לבלוק הריק בעתיד.כתיבה על מגזר שכבר נכתב הוא בדיוק כמו כתיבה למגזר ריק על הכונן הקשיח mechnical, אבל כונן מצב מוצק חייב למחוק בלוק לפני לכתוב אליו.

NAND פלאש זיכרון כותב נתונים 4 KB דפים בתוך 256 KB חוסם.כדי להוסיף דפים נוספים לבלוק מלא חלקית, על כונן מצב מוצק למחוק את כל הבלוק לפני כתיבת הנתונים בחזרה אליו.

כאשר כונן מצב מוצק מתמלא, פחות ופחות בלוקים ריקים זמינים.במקומם בלוקים מלאים חלקית.כונן מצב מוצק לא יכול פשוט לכתוב את הנתונים החדשים אלה בלוקים מלאים חלקית - כי תמחק את הנתונים הקיימים.במקום פעולת כתיבה פשוטה, כונן מצב מוצק צריך לקרוא את הערך של הבלוק לתוך המטמון שלו, לשנות את הערך עם הנתונים החדשים, ולאחר מכן לכתוב אותו בחזרה.יש לזכור כי כתיבת קובץ סביר כרוך כתיבה בלוקים רבים, אז זה יכול להציג כמות משמעותית של עיכוב נוסף.

TRIM לא מאחד בלוקים מלאים חלקית

אם אתה ממלא כונן קיבולת או קיבולת הקרובה, סביר להניח כי בסופו של דבר אתה תהיה עם בלוקים מלאים חלקית חלקית לאחר מחיקת קבצים.הפקודה TRIM רק מפנה כונן מצב מוצק להסרת נתוני קובץ כאשר הקובץ נמחק.זה לא מכריח את הכונן לעשות כל סוג של פעולת ניקוי.

במילים אחרות, למלא כונן מצב מוצק קיבולת לפני מחיקת קבצים ואתה צפוי בסופו של דבר עם בלוקים מלאים חלקית.הכונן לא יעזוב את דרכו כדי לאחד את הבלוקים המלאים האלה במלואם בלוקים מלאים, ולשחרר בלוקים ריקים.הכונן עדיין יהיה מלא בלוקים מלאים חלקית וביצועים לכתוב יהיה מושפל.

Overprovisioning ו אשפה אוסף

כדי למנוע הצרכנים ממלאים את מצב מוצק שלהם כוננים וכלה בביצועים מושפעים קשות, יצרני SSD יוצאים מגדרם נגד זה.

כיתה מוצק כיתה מצב מוצק לעתים קרובות להפריש כ -7% מסך הפלאש שלהם אחסון ולהפוך אותו לא זמין למשתמש.זה נקרא "overprovisioning" - תוספת חומרת אחסון נוסף לכונן אבל אינו גלוי למחשב כמו אחסון זמין זה יכול להשתמש.שטח חילוף מבטיח כי הכונן לא יכול להיות לגמרי מלא - תמיד תהיה כמה יכולת חילוף כדי לשמור על ביצועים יציבים לכתוב.

לכל בקר של כונן מצב מוצק יש אלגוריתם איסוף אשפה כדי לנסות ולהקל על בעיה זו.כאשר הכונן הופך להיות מלא, הוא יחפש בלוקים מלאים חלקית ולהתחיל לאחד אותם, משחררים כמו בלוקים ריקים רבים ככל האפשר.כונני מצב מוצק שונים מפעילים פעולות אלה בזמנים שונים וספים - זה תלוי בבקר הכונן.

עדויות מבדק

אננדטק ביצעה מגוון של מדדים עם כוננים שונים כדי להקניט את היחסים בין מצב מוצק של כונן מצב מוצק לבין עקביות של ביצועים המבצע לכתוב שלה.כאשר מילאו כונן ריק, הם מצאו ביצועים לכתוב גבוהה מאוד בשלב מוקדם בתהליך ירידה משמעותית כמו פעולות לכתוב המשיך למלא את הכונן.

הגדרת שטח פנוי נוסף על הכוננים סייעה ביצועים להישאר עקביים, כפי שהוא הבטיח את הכונן צריך תמיד יש מספיק בלוקים ריקים מוכן.

הם מצאו כי "ביצועים מינימליים משתפרים באופן משמעותי ברגע שאתה פוגע 25% שטח חילוף עבור אלה [צרכנים] כוננים." ההמלצה הסופית שלהם היא כי אתה צריך "תוכנית על שימוש רק על 75% של הכונן שלך] קיבולת] אם אתה רוצה טובאיזון בין עקביות הביצועים ויכולת הקיבולת. "

אם יש לך כונן מצב מוצק, עליך לנסות להימנע משימוש ביותר מ 75% מהקיבולת שלו.קנה כונן גדול יותר עם נפח אחסון גדול יותר ממה שאתה צריך ואתה תבטיח כי יש לך תמיד לכתוב כתיבה עקבית.למרבה המזל, SSDs הופכים בהדרגה הרבה יותר זול, אז זה לא יקר כמו שזה היה פעם.

תמונה אשראי: סדרן מוסיקה ב Wikimedia, Simon Wüllhorst על Flickr