الگوریتمستان

برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
نکته‌ای در محاسبه‌ی زمان اجرای کد - الگوریتمستان
الگوریتمستان
  »  

نکته‌ای در محاسبه‌ی زمان اجرای کد

        در مورد تفاوت توابع clock و time در زبان برنامه‌نویسی ++C برای محاسبه‌ی زمان اجرای برنامه

برای محاسبه‌ی زمان اجرای کد در ++C می‌توان از دو تابع clock یا time استفاده کرد. تابع clock، تعداد کلاک‌های در اختیار برنامه از CPU تا آن لحظه را برمی‌گرداند که با تقسیم بر CLOCKS_PER_SEC به ثانیه تبدیل می‌شود. تابع time، زمان سیستم را بر حسب ثانیه برمی‌گرداند. پس می‌توان از اختلاف دو clock و تقسیم آن بر CLOCKS_PER_SEC یا اختلاف دو time مدت زمان اجرای قطعه کد را به دست آورد.

استفاده از این دو تابع دو تا تفاوت دارد. اول اینکه با clock امکان محاسبه‌ی مقادیر کمتر از ثانیه هم وجود دارد و مثلا عدد 0.5 یعنی 500 میلی‌ثانیه. در حالی که با time امکان محاسبه‌ی کمتر از ثانیه وجود نداره. دوم، clock تعداد کلاک‌های در اختیار برنامه از CPU رو نشان می‌دهد. بنابراین برای برنامه‌ها با پردازش موازی، اختلاف نقطه‌ی شروع و پایان با این تابع، لزوما به معنی مدت زمان اجرا نیست و متناسب با تعداد پردازش‌های موازی ممکن است چند برابر بیشتر باشد. چرا که چند هسته همزمان کلاک در اختیار برنامه قرار داده‌اند.

به اشتراک‌گذاری نوشته
اشتراک‌گذاری در LinkedIn     Cloob     اشتراک‌گذاری در Twitter     اشتراک‌گذاری در Facebook     ارسال با Telegram
برچسب‌ها
امتیاز نوشته
  • 1
  • 2
  • 3
  • 4
  • 5

نام: *  

پست الکترونیک:

وبگاه:

متن پیام: *

01 02 03 04 05 06 07 08 09 10 11 12 13 14

 


الگوریتمستان در تلگرام

   

 

پیوند کوتاه: عمر نوشته:  ۱۰۶۱ روز
کل بازدید:  ۲۹۷۷ بازدید
تعداد امتیاز:  ۲ امتیاز
میانگین امتیاز:  ۱.۵۰  از  ۵.۰۰
»  کتاب Competetive Programming
        معرفی کتاب Competitive Programming برای علاقه‌مندان به شرکت در مسابقات برنامه‌نویسی و المپیاد کامپیوتر با قابلیت دانلود نسخه‌ی الکترونیکی
»  بازی Lights Out و ریاضیات دوست داشتنی
        حل بازی Lights Out با ریاضیات دوست داشتنی
»  نکته‌ای در مورد کلاس‌ها و مجموعه‌ها در ++C
        بررسی روش تعریف کلاس برای قابلیت استفاده از ظرف‌های مجموعه (set و unordered_set) در زبان برنامه‌نویسی ++C
»  سوال Free Ticket
        راهنمای حل سوال Free ticket، از سوالات المپیاد ملی کامپیوتر هندوستان
»  sync_with_stdio در زبان ++C
        نکته‌ای در مورد کارایی عملیات ورودی و خروجی در زبان برنامه‌نویسی ++C و عملکرد تابع sync_with_stdio
»  ابزار VJudge
        معرفی وب‌سایت Virtual Judge برای برگزاری مجازی مسابقه‌ی برنامه‌نویسی به سبک مسابقات ACM-ICPC
»  هدر فایل bits/stdc++.h
        معرفی هدرفایل bits/stdc++.h برای کاهش زمان آماده شدن کد مسابقات برنامه‌نویسی
»  نکته‌ای از مسأله‌ی Graphical Editor
        استفاده از stringstream در حل سوالات مسابفات برنامه‌نویسی با زبان برنامه‌نویسی ++C
»  ابزار UVA Toolkit
        معرفی وب‌سایت UVA Toolkit برای کمک به حل سوالات برنامه‌نویسی UVA Online Judge
»  نکته‌ای از مسأله‌ی LC-Display
        نکته‌ای در باب روش ذخیره کردن ورودی یک مسأله
»  تابع popen در زبان ++C
        روش اجرای برنامه‌ای دیگر داخل کد ++C و استفاده از خروجی آن
»  ظرف‌ها در ++C
        معرفی انواع ظرف‌ها (نگهدارنده‌ها - containers) در زبان برنامه‌نویسی ++C
»  سینوس و کسینوس را قورت بده
        محاسبه‌ی جدولی سینوس و کسینوس زوایای مشهور
»  نکته‌ای در استفاده از map
        نکته‌ای در مورد استفاده از ساختمان داده‌ی map با مثالی به زبان برنامه‌نویسی ++C