اطلاعیه

Collapse
No announcement yet.

Dhrystone 2.1 چیست ؟

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    Dhrystone 2.1 چیست ؟

    با سلام
    لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست و مفهوم
    1.25
    DMIPS/MHz
    را کامل و شفاف توضیح دهید
    با کمال تشکر از اساتیدی که جواب خواهند داد

    #2
    پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

    کامل نمیدونم فقط در حد سوادم
    منظور اینکه 1.25 کلاک لازم داره تا یک دستور رو انجام بدیعنی 5 کلاک 4 دستور
    هرچه سعی کنیم لایه های نرم افزاری زیاد کرده و از سخت افزار دور کنیم مشکلات(باگ ها) کمتر خواهد شد(امنیت بیشتری خواهید داشت)
    بهترین جواب دهنده برای سوال شما، خود شما هستید البته بعد تلاش،پشتکار و مطالعه بیشتر
    میدونی مشکل ما کجاست؟سرمایه و مغز ها رو نمیتونیم یکجا جمع کنیم...

    تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

    دیدگاه


      #3
      پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

      اول باید مفهوم VAX-11 رو بدونید .

      The VAX-11 was a family of minicomputers developed and manufactured by Digital Equipment Corporation (DEC) using processors implementing the VAX instruction set architecture (ISA). The VAX-11/780 was the first VAX computer.

      بعد متن زبر رو بخونید

      The MIPS figures which ARM (and most of the industry) quotes are "Dhrystone VAX MIPs". The idea behind this measure is to compare the performance of a machine (in our case, an ARM system) against the performance of a reference machine. The industry adopted the VAX 11/780 as the reference 1 MIP machine.

      The benchmark is calculated by measuring the number of Dhrystones per second for the system, and then dividing that figure by the number of Dhrystones per second achieved by the reference machine.

      So "80 MIPS" means "80 Dhrystone VAX MIPS", which means 80 times faster than a VAX 11/780.

      The reason for comparing against a reference machine is that it avoids the need to argue about differences in instruction sets. RISC processors tend to have lots of simple instructions. CISC machines like x86 and VAX tend to have fewer, more complex instructions. If you just counted the number of instructions per second of a machine directly, then machines with simple instructions would get higher instructions-per-second results, even though it would not be telling you whether it gets the job done any faster. By comparing how fast a machine gets a given piece of work done against how fast other machines get that piece of work done, the question of the different instruction sets is avoided.

      There are two different versions of the Dhrystone benchmark commonly quoted:

      Dhrystone 1.1
      Dhrystone 2.1

      ARM quotes Dhrystone 2.1 figures. The VAX 11/780 achieves 1757 Dhrystones per second.

      - The maximum performance of the ARM7 family is 0.9 Dhrystone VAX MIPS per MHz.
      - The maximum performance of the ARM9 family is 1.1 Dhrystone VAX MIPS per MHz.

      These figures assume ARM code running from 32-bit wide, zero wait-state memory. If there are wait-states, or (for cores with caches) the caches are disabled, then the performance figures will be lower.

      To estimate how many ARM instructions are executed per second then simply divide the frequency by the average CPI (Cycles Per Instruction) for the core.

      - The average CPI for the ARM7 family is about 1.9 cycles per instruction.
      - The average CPI for the ARM9 family is about 1.5 cycles per instruction.
      تنها موردي كه همه آدما يقين دارن خدا در حقش زیاد لطف کرده
      داشتن عقله زيادتر از دیگر آدم ها است

      دیدگاه


        #4
        پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

        ممنون و سپاس برای پاسخ های شما دو عزیز
        دیگه داشتم از بچه های کشورمون نا امید میشدم چون هیپکس جواب نداد
        خدا رو شکر که حداقل یکی دو نفر آدم پیگیر پیدا شد که موضوع رو پیگیری کنه
        راستش دارم از پایه کار میکنم و میخام سیر تا پیاز ماجرا رو بدونم
        البته آدم تنبلی هم نیستم و رفتم یه متن انگلیسی رو خوندم ولی چیز زیادی دستگیرم نشد
        تا اینکه رفتم انجمن شرکت ST

        دیدگاه


          #5
          پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

          و در اونجا هم پیگیری کردم تا اینکه موضوع واسم کاملا جا افتاد
          و اما موضوع
          این یک معیاره واسه سنجش کارایی سی پی یو
          ولی بدین معنا نیست که دستورات arm با این سرعت یعنی 1.25 MIPS =million instruction per second
          اجرا میشن بلکه بدین معناست که یک برنامه خاص به نام Dhrystone وجود دارد برای تست سرعت و کارایی انواع پردازنده
          که این برنامه با یک پردازنده مرجع پردازش شده و نتیجه آن به عنوان معیار سنجش استفاده میشود

          دیدگاه


            #6
            پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

            نتیجه این پردازش با پردازنده مرجع این شد که 1میلیون دستور یا عملیات Dhrystone در یک ثانیه در فرکانس 1 مگا هرتز یا 1DMIPS/MHZ پردازش میشود
            این عدد معیار سنجش کارایی برای دیگر پردازنده ها نیز می باشد
            مثلا پردازنده ARM با هسته cortex-m3 پس از کامپایل کردن برنامه Dhrystone به کدهای قابل فهم خود موفق شد که به عدد 1.25DMIPS/MHZ برسد
            این بدان معنا نیست که پردازنده cortex-m3 دستورات خود را با این سرعت پردازش می کند بلکه بدان معناست که پردازنده cortex-m3 دستورات یا عملیات های Dhrystone را با این سرعت انجام میدهد

            دیدگاه


              #7
              پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

              باید بیان کنم که دلیل این امر این است که دستورات arm دارای قدرت پردازشی بیشتر نسبت به پردازنده مرجع هستند
              مثلا در مجموعه دستوالعمل های arm یک دستور داریم که میتواند عمل ضرب و جمع انباره ای را با یک خط کد دستور و در 2 سیکل کلاک انجام دهد
              و پردازنده دیگری نیاز به 2 خط دستور و 3 سیکل کلاک دارد
              این بیان میکند که پردازنده armدر اجرای برنامه هایی که از عملیات ضرب توام با جمع انباره ای استفاده میکند نسبت پردازنده فوق الذکر کاراتر و قدرتمندتر است

              دیدگاه


                #8
                پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

                ببینید میکرو 8051 نرخ پردازشی میکرو هستش مثلا در 8051 این عدد 1/12 بود یعنی 12 کلاک طول میکشید تا یک دستور اجرا گردد در pic 4 کلاک و در avr به ازای هر کلاک یک دستور اجرا میشود و این مقدار در میکرو ST بالاتر از یک شده یعنی در کمتر از یک کلاک دستور اجرا میگردد که با استفاده از خطوط لوله به این سرعت دست یافته است یعنی در این میکرو باکلاک 72 مگاهرتز 90 میلیون دستور در ثانیه اجرا میشود . البته دستورات پرشی در و سیکل انجام میپذیرند
                The losers find problem in every answer but the winners find an answer in every problem

                FETAMAKER

                دیدگاه


                  #9
                  پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

                  با سلام و احترام
                  این فرمایش شما صحیح نیست
                  بنده هم اوایل فکر میکردم اینطوره
                  ولی اینطور نیست
                  درسته که خطوط لوله به سرعت بخشیدن کمک میکنه ولی یادتون باشه که برای اجرای کامل هر دستور (البته منظورم دستورات تک سیکل هستش)
                  باید سه سیکل کلاک سپری شود که در حقیقت خطوط لوله این 3 کلاک رو به یک کلاک کاهش می دهند
                  این گفته که میکروکنترلر آرم stm32f10xx میتواند مجموعه دستورات اسمبلی خود را با سرعت 90 میلیون دستور بر ثانیه به ازای 72 مگاهرتز اجرا کند اشتباه است
                  اگر سوالی بود خوشحال میشم بپرسین

                  دیدگاه


                    #10
                    پاسخ : Dhrystone 2.1 چیست ؟

                    با سلام
                    وباتشکر از بحث خوبتون

                    میکرو های avr هشت بیتی در هر 1 مگاهرتز فرکانس 1 میلیون دستور را اجرا می کند ... و بعد میکروهای مثل stm32 سی دو بیتی فقط 1.25 میلیون دستور را در 1 مگاهرتز کلاک اجرا می کند؟!
                    ایا ملاک عرض یابی و تست Dhrystone در وضعیت 8 بیتیست یا 32 بیتیست ؟
                    باتشکر.

                    دیدگاه


                      #11
                      پاسخ : Dhrystone 2.1 چیست ؟

                      با سلام
                      در حقیقت برنامه Dhrystone 2.1 ترکیبی از عملیات های 8و 16و32 بیتی می باشد یا شاید حتی 64 بیتی
                      معیار ، پردازش ترکیبی این نوع داده ها بر اساس برنامه Dhrystone 2.1 می باشد
                      ولی این بستگی به قدرت پردازنده مورد نظر و کارایی دستورات آن دارد که این عملیات های Dhrystone 2.1 را پردازش نماید
                      به عنوان مثال فرض کنیم یک عملیات شیفت به چپ به تعداد 6 بیت شیفت برای یک عدد 8 بیتی باید در مجموعه task (وظیفه )های Dhrystone انجام شود
                      این task در میکزو کنترلر AVR با توجه به دستورات اسمبلی آن در بهترین حالت به 6 سیکل کلاک نیاز دارد ولی همین task در میکروکنترلر arm با هسته cortex-m3
                      تنها با یک سیکل کلاک اجرا می شود
                      حالا مثلا همین task در cpu مرجع که task های Dhrystone برای اولین بار اجرا شدن در 2 سیکل کلاک اجرا شده اند

                      دیدگاه


                        #12
                        پاسخ : Dhrystone 2.1 چیست ؟

                        سلام
                        ممنون از پاسخ شما

                        پس تفاوت در حدود 5 یا 4 سیکل می باشد. (تقریبا میشه همون تفاوت 8 بیت با 32 بیت ...)
                        با این توصیفات که شرح دادید،پس چرا هنوز میزان دستورات در 1 مگاهرتز فرکانس بین میکرو 8 بیتی با 32 بیتی فقط 0.25 تفاوت دارد ؟ در حالی که باید ما بین 4 تا 5 میلیون دستور با هم تفاوت می داشتن .
                        باتشکر.

                        دیدگاه


                          #13
                          پاسخ : Dhrystone 2.1 چیست ؟

                          درود مجدد
                          خیر برای کل برنامه تفاوت 4 یا 5 سیکل نیست بلکه بیشتر از این اعداد تفاوت در سرعت اجرا وجود داره
                          اینی که بنده عرض کردم یک مثال بود یرای یک وظیفه خاص ولی برنامه Dhrystone 2.1 شامل تعداد زیادی از وظایف می باشد

                          دیدگاه


                            #14
                            پاسخ : لطفا بزرگان و متخصصان stm32 توضیح بدهند که Dhrystone 2.1 چیست ؟

                            نوشته اصلی توسط plc1361
                            نتیجه این پردازش با پردازنده مرجع این شد که 1میلیون دستور یا عملیات Dhrystone در یک ثانیه در فرکانس 1 مگا هرتز یا 1DMIPS/MHZ پردازش میشود
                            این عدد معیار سنجش کارایی برای دیگر پردازنده ها نیز می باشد
                            مثلا پردازنده ARM با هسته cortex-m3 پس از کامپایل کردن برنامه Dhrystone به کدهای قابل فهم خود موفق شد که به عدد 1.25DMIPS/MHZ برسد
                            این بدان معنا نیست که پردازنده cortex-m3 دستورات خود را با این سرعت پردازش می کند بلکه بدان معناست که پردازنده cortex-m3 دستورات یا عملیات های Dhrystone را با این سرعت انجام میدهد

                            البته بهتر است بگوییم که پردازنده VAX 11/780 نمونه ما 1757 بار در ثانیه توابع Dhrystones را اجرا میکند که بنا به قرارداد برابر با یک dmips میدانیم حال عدد 1.25 که برای m3 گفته شد نشان میدهد در فرکانس یک مگ 1,25 در 1757 بار کد های Dhrystones را اجرا میکند یا به گفته ای 1.25 برابر vax
                            خود شرکت ارم هم گویا پیشنهاد داده که از برنامه هایی با توابع پیچیده تر دیگری مانند spec و coremark برای بنچمارک استفاده کنید

                            دیدگاه


                              #15
                              پاسخ : Dhrystone 2.1 چیست ؟

                              بله
                              تشکر میکنم از جواب تکمیل کننده شما

                              دیدگاه

                              لطفا صبر کنید...
                              X