לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 04-03-2009, 15:39
  משתמש זכר dorM dorM אינו מחובר  
מנהל
 
חבר מתאריך: 26.07.08
הודעות: 6,473
Benchmark עבור שני מצבי error_reporting ושימוש ב-isset

שמתי לב שיש הבדל משמעותי במהירות ריצה כאשר משנים את מצב ה- error_reporting.

יצרתי קובץ שמדגיש את ההבדל בזמן ריצה בין מצב של error_reporting=E_ALL למצב של error_reporting=E_ALL & ~E_NOTICE.

את הבדיקות עשיתי על קוד שמבצע את הדברים הבאים:
- טוען מערך data שמכיל מידע שרירותי, שגודלו מוגדר בקבוע שנקרא "all_data_size".
- טוען מערך search שמכיל גם הוא מידע שרירותי. מערך ה-search מכיל members שדומים ל-members במערך data, והוא מכיל members אשר שונים מה-members במערך data. כמות ה-members השונים ניתן לקביעה באמצעות הקבוע שנקרא "diff_data_size".
גודלו של מערך ה-search ייקבע גם כן ע"פ הקבוע "all_data_size".
- טוען למערך retrieve את ה-members שאמורים להיות במערך data, ע"פ המפתחות של ה-members של המערך search.


בשני מצבי ה-error_reporting השונים, טענתי את המערך retrieve פעם אחת בלי isset, ובפעם האחרת עם isset.

הכל מוסבר בקובץ בצורה טובה אני מקוה.
יש גם קבוע בשם TIMES שסה"כ אומר ללולאת ה-for שמבצעת את בדיקת ה- execution time את כמות האיטרציות. אני קבעתי אותו ל-100 כי אני חושב שזה מספיק...

בסוף יש גם מסקנות שהסקתי מהדבר. המסקנה הסופית היא שתמיד צריך להשתמש ב- isset, זה יכול רק לייעל את הקוד ולעשות אותו נייד עבור מקומות בהם יש E_NOTICE מופעל (למרות שקשה לי להאמין שמקומות אלה קיימים, מלבד שרתים של מפתחי PHP ...).
המקרה היחידי שבו isset איטי יותר הוא כאשר כמות ה-members השונים הוא 0 או יחסית שואף ל-0. בכל אופן זה לא משפיע משמעותית על זמן הריצה, כי מדובר על סדר גודל של E-5 על המכונה הישנה שלי.

הקובץ, שתוכלו לבדוק בעצמכם:
error_reporting.php

נערך לאחרונה ע"י dorM בתאריך 04-03-2009 בשעה 15:42.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 23:30

הדף נוצר ב 0.03 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר