עבור לתוכן

התנהלות מול SSD עבור תכנת C++

Featured Replies

פורסם

עד היום לא היה לי שום מחשב אישי עם SSD. תמיד קניתי אותו עם HDD.

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

השאלה איך בתור תכנת צריך להתנהל עם שילוב של כונן SSD וHDD.

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

כנראה שמתוך בורות אני לא יודע עד הסוף מה צריך לשים על הSSD או לייתר דיוק מה בדיוק ה 2013VS עושה עם קבצים בזמן קומפלציה.

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

(כן עברתי בחזרה לWINDOWS, ההקינטוש היתה רק דוגמא).

אז את ה VS2013 צריך לשים בSSD כמובן, אבל מה עוד?

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

אז נניח לשים את VS, את הפרוייקט ואת כל הסיפריות החיצוניות.

אבל אז יוצא ששמים כמעט הכל בכל מקרה.

מה בנוגע לנכסים של התוכנה\משחק? הם יכולים לשקול הרבה, אבל מבעס לשים אותם בדרייבר אחר מזה של הפרוייקט.

בגדול מה הניסיון שלכם בתור תכנתי C++ לWINDOWS עם זמני קומפלציה וכונן SSD, איך אתם לא מפוצצים את הכונן? אשמח לשמוע מניסיונכם.

פורסם

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

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

פורסם

כמה גדול כבר יכול להיות ההדבל בקומפילציה?.. זה משמעותי עד כדי כך בשבילך?

אין לי SSD, ואף פעם לא היה לי (אני מתכוון לקנות בזמן הקרוב).. וזה פשוט מעניין אותי לדעת אם זה יגרום להבדל משמעותי בפרודקטיביות בסביבת פיתוח (אצלי זה Java/Eclipse).

לא קשור כל כך לשאלתך, אבל מאחר ויש לך ניסיון עם זה ועם HDD בעבר, אשמח לדעת מה את חושב על זה, והאם זה שווה שדרוג :)

פורסם

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

פורסם
  • מחבר

האמת חשבתי למה לא לטעון כבר הכל לזיכרון, ומסתבר שהקומפיילר כן עושה את זה כשאפשרי או בקונפיגורציה מסויימת?

טוב, מסתבר שהמערכת הפעלה עושה CACHING לקבצים לRAM כשהיא יכולה. בגלל זה אפליקציות בWINDOWS תופסות לכאורה הרבה זיכרון בRAM.

נערך על-ידי Sargon

פורסם

בגדול עם SSD ה-IntellieSense לא נתקע יותר, Go To Definition עובד מהר יותר. ד"א, דגל MP (Multi-Processor) גם יכול לעזור.

פורסם
  • מחבר

היתרון של הSSD, או אם צריך אז אפשר גם RAMDRIVE זה בכתיבה של הקבצים.

הסביבה צריכה לכתוב קבצי קומפלציה זמניים ׁ(כמו OBJ) והיא לא יכולה להחזיק אותם סתם כמבנה נתונים בזיכרון. היא חייבת להחזיק אותם כקובץ כמה שמתמש בקבצים האלה זה PROCESS נפרד וPROCESS נפרדים בדרך כלל לא יכולים לגשת לזיכרון ווירטואלי משותף.

יש אפשרות גם לעשות WRITEBACK שאז המערכת הפעלה מבצעת כתיבות של הקובץ לCACHE ב RAM ודוחה את הכתיבה ל כונן הקשיח לאחר כך.

בקיצור נראה לי ברמה מסויימת עדיף להשקיע בהמון RAM מאשר בכונן SSD.

מן הסתם הINTELLISENSE משתמש בקובץ ששכחתי מה הסייומת שלו.

פורסם
כמה גדול כבר יכול להיות ההדבל בקומפילציה?.. זה משמעותי עד כדי כך בשבילך?

אין לי SSD, ואף פעם לא היה לי (אני מתכוון לקנות בזמן הקרוב).. וזה פשוט מעניין אותי לדעת אם זה יגרום להבדל משמעותי בפרודקטיביות בסביבת פיתוח (אצלי זה Java/Eclipse).

לא קשור כל כך לשאלתך, אבל מאחר ויש לך ניסיון עם זה ועם HDD בעבר, אשמח לדעת מה את חושב על זה, והאם זה שווה שדרוג :)

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

מה גם שפרויקטים רציניים גם צריך לבדוק בVirtual Machine. את המכונות אני גם שם על הSSD כי זה מזרז את התהליך בצורה דרסטית.

נערך על-ידי Zeev86

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים