model2 - F.Ramezani

Download Report

Transcript model2 - F.Ramezani

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 / xy
 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