أداء الحواسيب

من ويكي الهندسة المعلوماتية
اذهب إلى: تصفح، ابحث

لا بد قبل الحديث عن أداء الحواسيب، من تعريف هذا المفهوم.

  • لو قمت بتشغيل برنامج على حاسوبين شخصيين مختلفين، فإنك ستقول إن الحاسوب الأسرع هو الذي يقوم بتنفيذ المهمة بالوقت الأقصر.
  • لو كان لديك مركز بيانات بعدة مخدمات تتلقى مهاماً من المستخدمين، فإنك ستقول أن الحاسوب الأسرع هو الذي قام بتلبية عدد أكبر من طلبات المستخدمين.

فغالباً ما تهتم كمستخدم بزمن الاستجابة، أو زمن التنفيذ، وهو الوقت الفاصل بين بدء تنفيذ المهمة وانتهائها. بينما يهتم مدراء مراكز البيانات عادة بزيادة الإنتاجية، وهو حجم العمل المنجز خلال زمن معين.

لهذا السبب نحتاج إلى مقاييس وتطبيقات عديدة لتقييم أداء الحواسيب تختلف باختلاف أنواع تلك الحواسيب: من الحواسيب الشخصية، إلى المخدمات، إلى النظم المدمجة.

قياس الأداء

سنركز في الأغلب على حساب الأداء بالنسبة لسرعة الاستجابة أكثر من الإنتاجية. لهذا السبب سنعرف الأداء بدلالة زمن التنفيذ:

الأداء = 1 / زمن التنفيذ


أداء وحدة المعالجة المركزية

توجد علاقة بسيطة تربط مؤشرات القياس الأساسية التي تحدد أداء المعالج:

زمن تنفيذ معالج لبرنامج = عدد دورات الميقاتية للبرنامج * دور الميقاتية

وبما أن دور الميقاتية هو مقلوب ترددها ( أو تواترها)، فيمكننا أن نكتب أيضاً:

زمن تنفيذ معالج لبرنامج = عدد دورات الميقاتية للبرنامج / تواتر الميقاتية

أي أننا قمنا بحساب المدة الزمنية التي تستغرقها وحدة المعالج المركزية لتنفيذ برنامج ما، بمعرفة عدد دورات الميقاتية (الساعة) اللازمة لتنفيذ ذلك البرنامج، بعد ضربها بزمن كل دورة للميقاتية.

إن عدد دورات الميقاتية يعتمد على شيئين:

  • عدد تعليمات البرنامج
  • عدد الدورات الوسطي للتعليمة، وهو مؤشر ما يشار إليه بـ CPI، اختصاراً لـ (Cycles Per Instruction)

وهذا ما نجده واضحاً في هذه العلاقة التي تحسب عدد دورات الميقاتية للبرنامج:

عدد دورات الميقاتية للبرنامج = عدد تعليمات البرنامج * عدد الدورات الوسطي للتعليمة

فيصبح زمن تنفيذ البرنامج على النحو التالي:

زمن التنفيذ = عدد التعليمات * CPI * دور الميقاتية

العلاقة الأخيرة ذات أهمية كبيرة، لأنها تلخص علاقة العوامل الثلاث التي تؤثر في أداء وحدة المعالجة المركزية.