דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. השוואת מהירות הרצה בין שני ווריאציות של קוד

השוואת מהירות הרצה בין שני ווריאציות של קוד

מתוזמן נעוץ נעול הועבר תכנות
7 פוסטים 2 כותבים 211 צפיות 1 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • searchnicksS מנותק
    searchnicksS מנותק
    searchnicks
    כתב ב נערך לאחרונה על ידי
    #1

    יש לי שני קטעי קוד שונים (שפת C) שעושים אותה מטרה.
    איך אני יכול לבדוק מה יותר יעיל ומהיר?

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

    yossizY תגובה 1 תגובה אחרונה
    0
    • searchnicksS searchnicks

      יש לי שני קטעי קוד שונים (שפת C) שעושים אותה מטרה.
      איך אני יכול לבדוק מה יותר יעיל ומהיר?

      yossizY מנותק
      yossizY מנותק
      yossiz
      כתב ב נערך לאחרונה על ידי
      #2

      @searchnicks זה מיחשוב נטו? או שיש משתנים צדדיים שיכולים להשפיע על המהירות? כמו מהירות IO?

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      searchnicksS תגובה 1 תגובה אחרונה
      1
      • yossizY yossiz

        @searchnicks זה מיחשוב נטו? או שיש משתנים צדדיים שיכולים להשפיע על המהירות? כמו מהירות IO?

        searchnicksS מנותק
        searchnicksS מנותק
        searchnicks
        כתב ב נערך לאחרונה על ידי
        #3

        @yossiz מחישוב נטו
        אותו נתוני לקוח
        אותו קומפיילר
        אותו מערכת
        אותו משתמש.

        זה רק לבדיקה עצמית

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

        yossizY תגובה 1 תגובה אחרונה
        0
        • searchnicksS searchnicks

          @yossiz מחישוב נטו
          אותו נתוני לקוח
          אותו קומפיילר
          אותו מערכת
          אותו משתמש.

          זה רק לבדיקה עצמית

          yossizY מנותק
          yossizY מנותק
          yossiz
          כתב ב נערך לאחרונה על ידי
          #4

          @searchnicks אתה בווינדוס או בלינוקס?

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          searchnicksS תגובה 1 תגובה אחרונה
          0
          • yossizY yossiz

            @searchnicks אתה בווינדוס או בלינוקס?

            searchnicksS מנותק
            searchnicksS מנותק
            searchnicks
            כתב ב נערך לאחרונה על ידי
            #5

            @yossiz בווינדוס

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

            searchnicksS תגובה 1 תגובה אחרונה
            0
            • searchnicksS searchnicks

              @yossiz בווינדוס

              searchnicksS מנותק
              searchnicksS מנותק
              searchnicks
              כתב ב נערך לאחרונה על ידי
              #6

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

              האם יש כלים לאבחן את זה?

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

              תגובה 1 תגובה אחרונה
              0
              • yossizY מנותק
                yossizY מנותק
                yossiz
                כתב ב נערך לאחרונה על ידי yossiz
                #7

                משהו כזה:

                #include <windows.h>
                #include <stdio.h>
                
                void main() {
                  // https://docs.microsoft.com/en-us/windows/win32/sysinfo/acquiring-high-resolution-time-stamps
                  LARGE_INTEGER StartingTime, EndingTime, ElapsedMicroseconds;
                  LARGE_INTEGER Frequency;
                  int i;
                
                  QueryPerformanceFrequency(&Frequency); 
                  QueryPerformanceCounter(&StartingTime);
                
                  for (i = 0; i < 100; i++) {
                    // your code
                  }
                
                  QueryPerformanceCounter(&EndingTime);
                  ElapsedMicroseconds.QuadPart = EndingTime.QuadPart - StartingTime.QuadPart;
                  ElapsedMicroseconds.QuadPart *= 1000000;
                  ElapsedMicroseconds.QuadPart /= Frequency.QuadPart;
                
                  printf("My code runs in %i microseconds", ElapsedMicroseconds.QuadPart / 100);
                
                  QueryPerformanceCounter(&StartingTime);
                
                  for (i = 0; i < 100; i++) {
                    // his code
                  }
                
                  QueryPerformanceCounter(&EndingTime);
                  ElapsedMicroseconds.QuadPart = EndingTime.QuadPart - StartingTime.QuadPart;
                  ElapsedMicroseconds.QuadPart *= 1000000;
                  ElapsedMicroseconds.QuadPart /= Frequency.QuadPart;
                
                  printf("His code runs in %i microseconds", ElapsedMicroseconds.QuadPart / 100);
                }
                

                נ. ב. אני לא כותב C, (מכיר קצת אבל לא יותר מזה). ברור שהקומפיילר היה צורח על הקוד שלי, אבל כתבתי אותו בלי לשאול את הקומפיילר לדעתו... האחריות עליך לאתר ולתקן את השגיאות...

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                תגובה 1 תגובה אחרונה
                7
                • dovidD dovid העביר נושא זה מ-תכנות ב-
                תגובה
                • תגובה כנושא
                התחברו כדי לפרסם תגובה
                • מהישן לחדש
                • מהחדש לישן
                • הכי הרבה הצבעות


                בא תתחבר לדף היומי!
                • התחברות

                • אין לך חשבון עדיין? הרשמה

                • התחברו או הירשמו כדי לחפש.
                • פוסט ראשון
                  פוסט אחרון
                0
                • דף הבית
                • קטגוריות
                • פוסטים אחרונים
                • משתמשים
                • חיפוש
                • חוקי הפורום