מחשב חזק לסביבת עבודה למתכנת
-
@www אמר במחשב חזק לסביבת עבודה למתכנת:
@חוקר אמר במחשב חזק לסביבת עבודה למתכנת:
יש בו קטע אחד שמאוד מפריע לי, שבקבצים גדולים של כ 3000 שורות קוד יש השהיה מסויימת בחלק מההשלמות האוטומטיות
הקובץ הזה נמצא על הSSD?
זה לא נראה הבעיה
רואים בבירור שיש עומס על הCPU. -
@nigun אמר במחשב חזק לסביבת עבודה למתכנת:
זה לא נראה הבעיה
רואים בבירור שיש עומס על הCPU.אני יודע.
בכל זאת, ייתכן שזה קורה בגלל שלא נטען כל הקובץ לזיכרון כי זה מדי גדול, ואז יש תהליך שצריך לעבור על הקובץ בדיסק, שים לב שהדיסק גם עולה ל 4 מ"ב, זה הרבה. -
@WWW אם היית צודק, היה ניכר האטה גם בגלילה בתוך המסמך. או חיפוש פשוט במסמך. חוץ מזה, תעשה חשבון כמה מ"ב עולה מסמך של 3000 שורות. זה כלום שבכלום ביחס לרמות המאסיביות של זכרון שהתוכנה זוללת.
ייתכן שאתה צודק במשהו, אבל לא בצורה שאתה אומר את זה. ייתכן שיש איזה מאגר/מטמון שתומך בהשלמה האוטומטית שגדול מדי. צריך לבדוק יותר לעומק איזה קבצים התוכנה קוראת.
-
@yossiz אמר במחשב חזק לסביבת עבודה למתכנת:
@WWW אם היית צודק, היה ניכר האטה גם בגלילה בתוך המסמך. או חיפוש פשוט במסמך. חוץ מזה, תעשה חשבון כמה מ"ב עולה מסמך של 3000 שורות.
אוישש... לא הבנת אותי.
לא התכוונתי שלא נטען לזיכרון כלל, אם לא, לא היה תופס לו 5GB ראם...אבל אולי בהשלמה האוטומטית הם לא ניגשים לזכרון של הקובץ, אלא בונים אינדקס לבד בזכרון, וייתכן שהאינדקס מוגבל לגודל מסויים, ומשום מה זה בנוי שהוא ניגש לקובץ עצמו בדיסק, וזה מה שגורם להאטה בקבצים גדולים.
כמובן שזה חשש רחוק, אבל אני כותב את זה בגלל שרואים גם קפיצה בדיסק של 4 מ"ב לשניה, שזה הרבה.אולי צריך לבדוק בצג המשאבים>דיסק מה קורה בשניות האלה.
עריכה: אני רואה שהקדמת אותי בעריכה תוכ"ד שכתבתי.
רק אתה טוען שזה לא קשור לקובץ עצמו.
כאמור @חוקר צריך לבדוק בצג המשאבים. -
תודה רבה לכל העונים
אציין מדובר במחשב חדש נייח(למי שאמר התקנה נקיה של ווינדוס, מדובר בהתקנה חדשה נקיה)
אכן הקבצים של הפרוייקט יושבים על ה HD ולא על ה SSD.
כמו"כ הביצועים שלו מעולים! ולמשל פעולת build שבנייד הקודם לכל 2-3 דקות יכול לקחת כאן 16-55 שניות.
כמו"כ השלמת מידע של אובייקטים ופונקציות בקובץ עצמו עובדים מצויין, כמעט ללא שהיה.
הן אובייקטים הקיימים בדף והן אובייקטים מיובאים, הוא משלים יחסית מהר.
החלק הבעייתי הינו בפונקציות המובנות בJS כגון console שהוא לא טוען מיידית.
ניתן לראות כולל לוח ביצועים
כפי שכתבתי לעיל המילה log הוא קיצור ל console.log() ומאידך המילה asyncxx היא קיצור לתחביר קצר לפונקציית asinc מהירה וזה עובד ללא שהיה.
ולגבי הנושא פיצול הקובץ, מדובר בקובץ שמכיל את כל המערכת של ישיבה על קברו ה API וה IVR וכן סינכרון לגוגל דרייב בו מכינים את השאלות ועוד וכל האובייקטים והפונקציות משותפות ומקושרות ולכן הכי קל לעבוד ולתחזק (ולהשלים אובייקטים ופונקציות) מתוך קובץ בודד -
@חוקר
התכוונתי למסך שבו רואים את החלוקה המלאה כמה כל ט'רד צורך (אם יש אפשרות כזו)
לבנתיים נראה שיש 3-2 ט'רדים שצורכים 25-26% שזה די מסתדר עם התזה (2*12.5)
צריך לנסות לראות מה קורה בקובץ יותר גדול, אולי 100K שורות
כשמעצימים את הבעיה לפעמים יותר קל למצוא אותה -
@odeddvir אמר במחשב חזק לסביבת עבודה למתכנת:
מגיגול קצר ראיתי שהעיכוב בהשלמה אוטומטית של phpStorm הוא בעיה נפוצה. יש בתוצאות החיפוש גם כמה פתרונות, אבל לא בדקתי לעומק.
ראשית כל תודה רבה!
למרות שכבר הגדלתי מזמן את הזכרון המקסימאלי לתוכנה ל 10G, מדפדוף בתוצאות שהבאת בדקתי שוב וראיתי שיש שם ערך נוסף שלא כ"כ הבנתי את משמעותו, אבל הגדלתי אותו ג"כ וכעת זמן ההשהיה ירד לחצי.
אפשר לומר שזה הרבה יותר סביל כעת
לפי ההנחיה כאן, הגדלתי גם את הערך של Xms ונראה שזה מה ששיפר משמעותי
https://www.jetbrains.com/help/phpstorm/tuning-the-ide.html#common-jvm-options
מה שכן מסקרן אותי כעת האם שדרוג המעבד יזרז עוד יותר את המהירות
(מה שמעניין שנראה שגם צריכת הCPU נרגעה לאחר השינוי)