Computer Modeling And Simulation F.Ramezani Department of Computer Engineering Islamic Azad University SARI Branch Introduction to Computer Modeling And Simulation Topics 2 معرفی تکنیک های اندازه گیری نظارت سخت افزار نظارت نرم افزار نظارت ترکیبی تحلیل دادهها تکنیک های شبیه سازی تجزیه و تحلیل رگرسیون واریانس تکنیک های کاهش مدل های صف تجزیه و تحلیل تصادفی F.Ramezani Introduction to Computer Modeling And Simulation مقدمه 3 ( Evaluationارزیابی) :بررسی این که آیا عملکرد یک سیستم نسبت به سیستم های قبل بهتر شده یا خیر. جنبه های ارزیابی: :functionalسیستم باید دقیقا کاری را که برای آن طراحی شده انجام بدهد. performance ( Performance Evaluationارزیابی کارایی): اطمینان از این که سیستم برای کاربرد موردنظر مناسب ,مؤثر و قابل اطمینان است. -سیستم باید با توجه به محدودیت منابع ,نزدیک به سطح بهینه عمل کند. F.Ramezani Introduction to Computer Modeling And Simulation Objectives (1 of 6) 4 عملکرد متریک و حجم کار برای یک سیستم،تکنیک های ارزیابی مناسب .را انتخاب کند Select appropriate evaluation techniques, performance metrics and workloads for a system. Techniques: سنجش شبیه سازی و تحلیل، اندازه گیري Metrics: ضوابط، معیارها، (شرایطex: response time) Workloads: requests by users/applications to the system Example:? a) Two disk drives b) Two transactions processing systems c) Two packet retransmission algorithms Introduction to Computer Modeling And Simulation F.Ramezani Objectives (2 of 6) 5 انجام اندازه گیری عملکرد درستی Need two tools: load generator and monitor Example: Which workload…? a) Utilization on a LAN b) Response time from a Web server c) Audio quality Introduction to Computer Modeling And Simulation F.Ramezani )Objectives (3 of 6 6 استفاده از تکنیک های مناسب آماری برای مقایسه چند راه حل جایگزین یک اجرا از یک حجم کاری اغلب کافی نیست بسیاری از کامپیوتر ها عملکرد غی قطعی دارند با مقایسه چندین اجرا میتوان نتایج تولید شده را اصالح کرد ?Example: Packets lost on a link. Which link is better File Size Link A Link B 1000 5 10 1200 7 3 1300 3 0 50 0 1 F.Ramezani Introduction to Computer Modeling And Simulation Objectives (4 of 6) 7 طراحی اندازه گیری و شبیه سازی باارزش ترین اطالعات را با کمترین تالش .ارائه می کنند اغلب بسیاری از عوامل هستند که کارایی عملکرد را تحت تاثیر قرار میدهند جدا از اثر که بصورت جداگانه هم مهم هستند Example? A) garbage collection technique: G1, G2 none B) type of workload: editing, compiling, AI C) type of CPU: P2, P4 Introduction to Computer Modeling And Simulation F.Ramezani )Objectives (5 of 6 8 انجام شبیه سازی به درستی انتخاب درست زبان برنامه نویسی ،مقدار اولیه برای تولید اعداد تصادفی ،طول اجرای شبیه سازی ،تجزیه و تحلیل قبل از اجرا Example: ? A) how long should the simulation be run برای بدست آوردن همین دقت چه عملی می توان انجام داد برای کوتاه کردن اجرا ) B F.Ramezani Introduction to Computer Modeling And Simulation )Objectives (6 of 6 9 استفاده از سیستم صف برای تجزیه و تحلیل عملکرد سیستم استفاده از سیستم های کامپیوتری با نرخ ورود و نرخ خدمات متفاوت برای Multiple servers Multiple queues Example: Web request rate 2سرویس دهنده وب دو پردازنده ای یا 4سرویس دهنده وب تک پردازنده ای؟ F.Ramezani Introduction to Computer Modeling And Simulation The Art of Performance Evaluation 10 ارزشیابی مکانیکی تولید نمی شود نیاز به دانش دقیقی از سیستم انتخاب دقیق روش ،حجم کار ،ابزار پاسخ صحیح به عنوان دو تحلیل کارایی و انتخاب یا حجم کار در معیارهای مختلف F.Ramezani Introduction to Computer Modeling And Simulation A Systematic Approach for Evaluation 11 اهداف مسئله و تعریف مرزهای انتخاب معیارهای عملکرد لیست سیستم و پارامترهای حجم کار انتخاب عوامل و ارزش ها انتخاب روش های ارزیابی انتخاب حجم کار آزمایش های طراحی تجزیه و تحلیل و تفسیر داده ها بررسی نتایج. Repeat. F.Ramezani Introduction to Computer Modeling And Simulation معیارهای اندازه گیری کارایی 12 جنبه های اصلی که در اندازه گیری کارایی درنظر گرفته می شود: سرعت انجام کار( :با توجه به تنوع بار کاری) کنترل زمان واقعی پردازش تراکنش محاسبات محاوره ای پردازش دسته ای چگونگی برخورد سیستم با خرابی و وضعیت غیر معمول ( :با توجه به نوع خرابی) از دست دادن قابل توجهی از اطالعات مانند خرابی هارد دیسک خرابی پردازنده چگونگی استفاده سیستم از منابع F.Ramezani Introduction to Computer Modeling And Simulation معیارهای اندازه گیری کارایی .... )تاثیر پذیري( responsiveness: ارزیابی سرعت انجام کار اندازه گیری ها: :waiting timeزمان از دادن کار به سیستم تا پاسخ :processing timeزمان پردازش یک کار :conditional waiting timeزمان انتظار برای کارهایی که زمان پردازش معینی الزم دارند. queue length انواع اندازه گیری: محاسبه میانگین حد باال درصد توزیع کلی F.Ramezani Introduction to Computer Modeling And Simulation 13 I. معیارهای اندازه گیری کارایی 14 :usage levelنحوه استفاده از منابع .II :throughputتعداد فرایندهایی که در واحد زمان از پردازنده استفاده می کنند. :utilizationمقدار کار مفید در واحد زمان تذکر :معموال آنچه در این قسمت بررسی می شود با responsivenessدر تناقض است. ( Mission abilityشایستگي) این که آیا در طول زمان مأموریت ,سیستم به صورت پیوسته عملکرد مناسبی داشته یا خیر. .III احتمال این که در فاصله زمانی مأموریت سیستم خطایی برای آن اتفاق نیفتد. تعیین عمر سیستم F.Ramezani Introduction to Computer Modeling And Simulation معیارهای اندازه گیری کارایی 15 IV. dependability قابلیت اطمینان سیستم در زمان طوالنی: V. :از دو نظرreliability , availability اعتبار و دسترسی (MTTF): Mean Time To Failure (MTTR): Mean Time To Repair (MTBF): Mean time between failure Long term availability cost of a failure Productivity بهره وري: user friendliness آسانی Maintainability نگه داری Understandability درک Introduction to Computer Modeling And Simulation F.Ramezani ارتباط هر گروه از سیستم های کامپیوتری با معیار مناسب بهره وري قابلیت اطمینان شایستگي استفاده از منابع ماشینهاي همه كاره ،قابلیت استفاده مجدد کنترل بالدرنگ ماموریت گرا عمر طوالنی 16 تاثیر پذیري Introduction to Computer Modeling And Simulation F.Ramezani روشهای ارزیابی کارایی 17 .1 اندازه گیری .2 شبیه سازی .3 مدل سازی تحلیلی .4 مدل سازی ترکیبی (ترکیبی )2،3 F.Ramezani Introduction to Computer Modeling And Simulation روشهای ارزیابی کارایی ... 18 :measurementاندازه گیری اساسی ترین روش که در سایر روشها هم استفاده می شود. داده ای که از اندازه گیری ها جمع آوری می شود باید با روش های آماری تحلیل شود تا نتیجه گیری ها معنی دار باشد. تعیین پارامترهای خروجی که باید اندازه گیری شوند ,چگونه باید اندازه گیری شوند و چه مقادیری باید برای ترکیبهای ورودی که تحت کنترل هستند انتخاب شوند. F.Ramezani Introduction to Computer Modeling And Simulation روشهای ارزیابی کارایی ... 19 :simulation modelingساخت یک مدل برای رفتار سیستم و اجرای آن با بار کاری مناسب. مزیت :کلی بودن و انعطاف پذیری نکات مهم: تعیین این چه بخش هایی ازسیستم و در چه سطحی از جزئیات شبیه سازی شوند. داده تولید شده باید با روش های آماری تحلیل شود. باید سعی کرد که هزینه کاهش پیدا کند. شبیه سازی بسته به هدف مطالعه در سطوح مختلفی از جزئیات انجام می شود. F.Ramezani Introduction to Computer Modeling And Simulation روشهای ارزیابی کارایی ... 20 :Analytic modelingساخت یک مدل ریاضی برای رفتار سیستم و حل آن. برای بررسی رفتار کلی مفید است( .دامنه مدل محدود است) مدل های تحلیلی ساده معموال به راحتی حل می شوند و نتایج کامال دقیقی تولید می کنند.نسبت به مدل های پیچیده پایدارتر هستند ,خطاهای کوچک در مقدار پارامترها ,کمتر در نتایج تأثیر می گذارد. نتایج تحلیل ,مقدار پیش بینی بهتری نسبت به اندازه گیری یا شبیه سازی ایجاد می کنند. در برخی از سیستمها پارامترهای ورودی دقیقا مشخص نیستند یا نتایج مطلوب به خوبی تعریف نشده اند .زمانی که مدل سازی دقیق الزم نیست روشهای تحلیلی مناسبند. F.Ramezani Introduction to Computer Modeling And Simulation Technique مدل سازی تحلیلی شبیه سازی اندازه گیری انعطاف پذیري High High Low هزینه Low Medium High باور كردني Low Medium High صحت،دقت Low Medium High Characteristic F.Ramezani Introduction to Computer Modeling And Simulation 21 روشهای ارزیابی کارایی ... 22 Hybrid Modeling برای مدلهای پیچیده که شامل چند زیرمدل هستند مناسب است. مثال :ارزیابی سیستم کامپیوتر که از dynamic partitioning memory allocation استفاده می کند: .i حل مدل تحلیلی با فرض عدم وجود fragmentationو تعیین توزیع زمان نگهداری حافظه .ii شبیه سازی فقط برای تخصیص حافظه ,نگهداری و آزادسازی و تعیین میانگین کسری از حافظه که قابل استفاده نیست. .iii تنظیم مجدد مدل تحلیلی مرحله اول F.Ramezani Introduction to Computer Modeling And Simulation کاربردهای ارزیابی کارایی 23 :system design تعیین اهداف کارایی و اطمینان و ایجاد معماری پایه تعیین نحوه انتخاب پارامترها برای رسیدن به اهداف (ساخت مدلی از رفتار سیستم با سطح مناسبی از جزئیات و ارزیابی آن برای انتخاب پارامترها) :system selection :system upgrade جایگزینی سیستم یا بخشی از آن با واحد جدید. :system tuning انتخاب بهترین سیستم از یک مجموعه از سیستمها از لحاظ هزینه ,در دسترس بودن ,سازگاری و ... بهینه سازی کارایی با تغییر سیاست های مدیریت منابع. :system analysis بررسی اشکالهای سیستم و دلیل وجود آنها. F.Ramezani Introduction to Computer Modeling And Simulation workload characterization هدف :ایجاد ورودی های معینی برای سیستم واقعی یا مدل آن. دو گروه ورودی: (1 پارامترهای قابل کنترل توسط طراح یا متصدی سیستم .مثال :قوانین زمان بندی ,ارتباط بین دستگاهها ,سیاست های تخصیص منابع (2 ورودی هایی که توسط محیط تولید می شوند .مثال :تقاضاهای سرویس برای کارهای ورودی. مثال:افزایش قابلیت محاسباتی یک سیستم: باید اندازه گیری تحت بار کاری واقعی انجام شود و پارامترهای قابل کنترل در سطح مطلوبی ثابت نگه داشته شوند. مشکل )1 :کی و به چه مدتی اندازه گیری انجام شود؟ )2دقت به این مسأله که هدف تعیین بار کاری برای سیتم توسعه یافته است نه سیستم موجود. )3میزان استفاده از منایع چقدر است؟ F.Ramezani Introduction to Computer Modeling And Simulation 24 workload characterization 25 مسائل موجود: زمانی که اندازه گیری مستقیم امکان پذیر نیست. زمانی که دقیقا مشخص نیست که کدام ویژگیهای بار کاری مهم هستند. بار کاری در زمانهای مختلف ,متفاوت است. در مدل های تحلیلی مدل بار کاری خالصه ای که به صورت آماری است به کار می رود. در شبیه سازی الزم است جزئیات دقیق تر بررسی شوند. خالصه سازی بار کاری باعث کاهش هزینه ها و پایداری بیشتری می شود انواع بار کاری : ( Executableاجرایی) :شامل ثبت نمونه های ورودی و طول مدت سرویس دهی برای کارها. :Nonexecutableتعیین توزیع ها که برای مدل سازی تحلیلی به کار می رود. F.Ramezani Introduction to Computer Modeling And Simulation روشهای آماری برای ارزیابی عملکرد 27 Why do we need statistics? 1. Noise, noise, noise, noise, noise! Introduction to Computer Modeling And Simulation F.Ramezani 28 Why Do We Need Statistics? 445 446 397 226 388 3445 188 1002 47762 432 54 12 98 345 2245 8839 77492 472 565 999 1 34 882 545 4022 827 572 597 364 2. Aggregate data into meaningful information. x ... Introduction to Computer Modeling And Simulation F.Ramezani Why Do We Need Statistics? 29 “Impossible things usually don’t happen.” - Sam Treiman, Princeton University Statistics helps us quantify “usually.” Introduction to Computer Modeling And Simulation F.Ramezani What is a Statistic? 30 “ کمیت هر چیزی با استفاده از نمونه هایی از آن محاسبه میشود.” Merriam-Webster .→یک داده نماینده از کل داده و کل ساختار خواهد بود Introduction to Computer Modeling And Simulation F.Ramezani What are Statistics? 31 “جمع آوری اطالعات داده ها.” Merriam-Webster → We are most interested in analysis and interpretation here. Introduction to Computer Modeling And Simulation F.Ramezani Objectives 32 زمینه بصری مفهومی برای برخی از ابزارهای استاندارد آماری هستند. نتیجه گیری معنی دار در حضور اندازه گیری های داده های نویزی. به شما اجازه می دهد به درستی و هوشمندانه اعمال روش ها در موقعیت های جدید داشته باشید F.Ramezani Introduction to Computer Modeling And Simulation (1 of 3)ابزارهای آماری اساسی :رویدادهای مستقل یک رویداد دیگر تاثیر نمی گذارد دانستن احتمال یک رویداد برآورد یکی دیگر از تغییر نیست 33 Cumulative Distribution (or Density) Function: Fx(a) = P(x<=a) Mean (or Expected Value): Mean µ = E(x) = (pixi) for i over n Variance: Square of the distance between x and the mean (x- µ)2 Var(x) = E[(x- µ)2] = pi (xi- µ)2 Variance is often . Square root of variance, 2, is standard deviation انحراف معیار Introduction to Computer Modeling And Simulation F.Ramezani Basics (2 of 3) 34 Coefficient of Variation: Ratio of standard deviation to mean C.O.V. = / µ Covariance: Degree two random variables vary with each other Cov = 2xy = E[(x- µx)(y- µy)] Two independent variables have Cov of 0 خواهد شد1= وابسته Correlation: Normalized Cov (between –1 and 1) xy = 2xy / xy Represents degree of linear relationship Introduction to Computer Modeling And Simulation F.Ramezani Basics (3 of 3) 35 Quantile: The x value of the CDF (Cumulative Distribution (or Density) Function) at Denoted x, so F(x) = Often want .25, .50, .75 Median: The 50-percentile (or, .5-quantile) Mode: The most likely value of xi Normal Distribution Most common distribution used, “bell” curve Introduction to Computer Modeling And Simulation F.Ramezani Summarizing Data by a Single Number 36 Indices of central tendency Three popular: mean, median, mode Mean – sum all observations, divide by num میانگین Median – sort in increasing order, take middle وسط Mode – plot histogram and take largest bucket Mean can be affected by outliers, while median or mode ignore lots of info Mean has additive properties (mean of a sum is the sum of the means), but not median or mode Introduction to Computer Modeling And Simulation F.Ramezani Relationship Between Mean, Median, Mode 37 mean median mode modes mean median f(x) f(x) no mode (a) f(x) mean median (b) mode mode median f(x) median (c) mean Introduction to Computer Modeling And Simulation (d) f(x) mean F.Ramezani (d) Common Misuses of Means (1 of 2) 38 Using mean of significantly different values Just because mean is right, does not say it is useful Ex: two samples of response time, 10 ms and 1000 ms. Mean is 505 ms but useless. Using mean without regard to skew Does not well-represent data if skewed Ex: sys A: 10, 9, 11, 10, 10 (mean 10, mode 10) Ex: sys B: 5, 5, 5, 4, 31 (mean 10, mode 5) Introduction to Computer Modeling And Simulation F.Ramezani Common Misuses of Means (2 of 2) 39 Multiplying means Mean of product equals product of means if two variables are independent. But: if x,y are correlated E(xy) != E(x)E(y) Ex: mean users system 23, mean processes per user is 2. What is the mean system processes? Not 46! Processes determined by load, so when load high then users have fewer. Instead, must measure total processes and average. Introduction to Computer Modeling And Simulation F.Ramezani Geometric Mean (1 of 2) 40 Previous mean was arithmetic mean Used when sum of samples is of interest Geometric mean when product is of interest Multiply n values {x1, x2, …, xn} and take nth root: x = (xi)1/n Example: measure time of network layer improvement, where 2x layer 1 and 2x layer 2 equals 4x improvement. Layer 7 improves 18%, 6 13%, 5, 11%, 4 8%, 3 10%, 2 28%, 1 5% So, geometric mean per layer: [(1.18)(1.13)(1.11)(1.08)(1.10)(1.28)(1.05)]1/7 – 1 Average improvement per layer is 0.13, or 13% Introduction to Computer Modeling And Simulation F.Ramezani Harmonic Mean (1 of 2) 41 Harmonic mean of samples {x1, x2, …, xn} is: n / (1/x1 + 1/x2 + … + 1/xn) Use when arithmetic mean works for 1/x Ex: measurement of elapsed processor benchmark of m million instructions. The ith takes ti seconds. MIPS xi is m/ti Since sum of instructions matters, can use harmonic mean for benchmarks = n / [1/(m/t1) + 1/(m/t2) + … + 1/(m/tn)] = m / [(1/n)(t1 + t2 + … + tn) Introduction to Computer Modeling And Simulation F.Ramezani Harmonic Mean (2 of 2) 42 Ex: if different benchmarks (mi), then sum of mi/ti does not make sense Instead, use weighted harmonic mean. xi’s represent the MIPS rate for n different benchmarks n / (w1/x1 + w2/x2 + … + w3/xn) where w1 + w2 + .. + wn = 1 In example, perhaps choose weights proportional to size of benchmarks wi = mi / (m1 + m2 + .. + mn) So, weighted harmonic mean (m1 + m2 + .. + mn) / (t1 + t2 + .. + tn) Reasonable, since top is total size and bottom is total time Introduction to Computer Modeling And Simulation F.Ramezani Mean of a Ratio (1 of 2) 43 Set of n ratios, how to summarize? Here, if sum of numerators and sum of denominators both have meaning, the average ratio is the ratio of averages Average(a1/b1, a2/b2, …, an/bn) = (a1 + a2 + … + an) / (b1 + b2 + … + bn) = [(ai)/n] / [(bi)/n] Commonly used in computing mean resource utilization Introduction to Computer Modeling And Simulation F.Ramezani Mean of a Ratio (2 of 2) 44 CPU utilization: For duration 1 busy 45%, 1 %45, 1 45%, 1 45%, 100 20% Sum 200%, mean != 200/5 or 40% The base denominators (duration) are not comparable mean = sum of CPU busy / sum of durations = (.45+.45+.45+.45+.20) / (1+1+1+1+100) = 21% Introduction to Computer Modeling And Simulation F.Ramezani Summarizing Variability (1 of 2) 45 mean Frequency Summarizing by a single number is rarely enough need statement about variability If two systems have same mean, tend to prefer one with less variability Frequency mean Introduction to Computer Modeling And Simulation F.Ramezani Response Time Response Time Summarizing Variability (2 of 2) 46 Indices of Dispersion Range – min and max values observed Variance or standard deviation 10- and 90-percentiles (Semi-)interquartile range Mean absolute deviation Introduction to Computer Modeling And Simulation F.Ramezani Range 47 Easy to keep track of Record max and min, subtract Mostly, not very useful: Minimum may be zero Maximum can be from outlier System event not related to phenomena studied Maximum gets larger with more samples, so no “stable” point However, if system is bounded, for large sample, range may give bounds Introduction to Computer Modeling And Simulation F.Ramezani Sample Variance 48 Sample variance (can drop word “sample” if meansing is clear) s2 = [1/(n-1)] (xi – x)2 Also called degrees of freedom Main problem is in units squared so changing the units changes the answer squared Ex: response times of .5, .4, .6 seconds Variance = 0.01 seconds squared or 10000 msecs squared Introduction to Computer Modeling And Simulation F.Ramezani Standard Deviation 49 So, use standard deviation s = sqrt(s2) Same unit as mean, so can compare to mean Ex: response times of .5, .4, .6 seconds stddev .1 seconds or 100 msecs Can compare each to mean Ratio of standard deviation to mean? Called the Coefficient of Variation (C.O.V.) Takes units out and shows magnitude Ex: above is 1/5 (or .2) for either unit Introduction to Computer Modeling And Simulation F.Ramezani Percentiles/Quantile 50 Similar to range Value at express percent (or fraction) 90-percentile, 0.9-quantile For –quantile, sort and take [(n-1)+1]th [] means round to nearest integer 25%, 50%, 75% quartiles (Q1, Q2, Q3) Note, Q2 is also the median Range of Q3 – Q1 is interquartile range دامنه میان چارکی ½ of (Q3 – Q1) is semi-interquartile range دامنه نیمه چارکی Introduction to Computer Modeling And Simulation F.Ramezani Mean Absolute Deviation 51 (1/n) |xi – x| Similar to standard deviation, but requires no multiplication or square root Does not magnify outliers as much (Outliers are not squared) So, how susceptible are indices of dispersion to outliers? Introduction to Computer Modeling And Simulation F.Ramezani Indices of Dispersion Example 52 (Sorted) CPU Time 1.9 2.7 2.8 2.8 2.8 2.9 3.1 3.1 3.2 3.2 3.3 3.4 3.6 3.7 3.8 3.9 3.9 3.9 4.1 4.1 4.2 4.2 4.4 4.5 4.5 4.8 4.9 5.1 5.1 5.3 5.6 5.9 First, sort Median = [1 + 31*.5] = 16th = 3.9 Q1 = 1 + .31 * .25 = 9th = 3.2 Q3 = 1 + .31*.75 = 24th = 4.5 SIQR = (Q3–Q1)/2 = .65 Variance = 0.898 Stddev = 0.948 Range = 5.9 – 1.9 = 4 Introduction to Computer Modeling And Simulation F.Ramezani Selecting Index of Dispersion 53 Is distribution bounded Yes? use range No? Is distribution unimodal symmetric? Yes? Use C.O.V. No? Use percentiles or SIQR Not hard-and-fast rules, but rather guidelines Ex: dispersion of network load. May use range or even C.O.V. But want to accommodate 90% or 95% of load, so use percentile. Power supplies similar. Introduction to Computer Modeling And Simulation F.Ramezani