العوامل الأساسية المؤثرة في أداء - TopicsExpress



          

العوامل الأساسية المؤثرة في أداء الهواتف الذكية والحواسب اللوحية المقالة التالية هي شرح بأسلوب مبسط لأبرز العوامل المؤثرة في أداء الهواتف الذكية والحواسب اللوحية. من أبرزها بالطبع المعالج Processor والمعالج الرسومي GPU. في هذه المقالة ستتضح لك الكثير من المفاهيم حول المعالجات الحسابية والمعالجات الرسومية، وستعرف لماذا تقدم بعض المعالجات ثنائية النواة أداءً أفضل من المعالجات رباعية النواة في بعض الأحيان، وماذا نعني بمصطلح “معمارية المعالج” وغير ذلك من المصطلحات والمفاهيم التي نتحدث عنها أحيانًا بشكل عابر في مواضيعنا المختلفة. تمهيد الكثير منا يعلم ما هي العوامل المؤثرة في أداء الحواسيب المكتبية (مثل كرت الشاشة)، لكن ليس لدى الكثير منا أي فكرة عن العتاد الخاص بالأجهزة المحمولة لهذا خطر ببالي كتابة هذا المقال. إن كنت ترغب بشراء جهاز لوحي قد ترغب في قراءة هذا المقال حتى تتمكن من فك أحجية المواصفات Specs، لكن دعني أخبرك أن أداء الجهاز اللوحي ليس وحده العامل الأهم في تلك الأجهزة فهناك حسن البناء وجودة الهيكل الخارجي وتباين الشاشة وسعة البطارية وغيرها من العوامل التي لن نتحدث عنها الآن.أول نصيحة هي أن لا تصدق أغلب اختبارات الأداء Benchmarks خصوصا التي لا تقيس أعمال حقيقية مثلا الكثير منها تقوم بعمليات حسابية داخل حلقة تكرار وحيث أن الحسابات لن تتغير فإنك تقيس أداء الكاش وليس المعالج. بعض اختبارات الأداء الموثوقة تقيس عملية حقيقية مثل الزمن اللازم لضغط كود لينكس المصدّر بصيغة gz أو لتحويل ملف صوتي من صيغة wav إلى صيغة mp3 أو عدد الأطر في الثانية في لعبة حقيقية …إلخ. ثاني شيء علينا أخذه بعين الاعتبار أن الأجهزة المنضدة Embedded Devices لا تحتوي لوحة أم عامة الأغراض توضع عليها لوحات إضافية بل يكون هناك نظام كامل على رقاقة واحدة System on Chip أو SoC اختصارا بمعنى أنه عليك أن تكون سعيد بكمية الرام منذ البداية لأنك لن تضيف المزيد منها، كذلك دعم bluetooth أو NFC …إلخ وأخيرا هناك عوامل تتعلق بالمنتج النهائي وليس بمكوناته مثلا بعض المنتجات تكون مخفضة السرعة under clocked لأن البطارية لا تستطيع توفير الطاقة اللازمة للسرعة الكاملة أو أن الغلاف لا يمكنه توفير التبريد اللازم …إلخ. عدد الأنوية وسرعة ساعة المعالج البعض يعتبر سرعة الساعة clock speed هي سرعة المعالج وهذا لا يكون دقيقا إلا في معالجات من نفس البنية ونفس النوع، مثلا لا يمكنك الحكم على المقارنة بين معالج Pentium 4 بسرعة 6 GHz وآخر i3 بسرعة 2Ghz. فإن كانت من نفس المعمارية عندها يمكنك مقارنة عدد الأنوية cores وسرعة الساعة. لو كان لدينا معالجين من نفس العائلة أحدهما بسرعة 1 غيغاهيرتز والآخر بسرعة 2 غيغاهيرتز فهذا يعني أن أداء الثاني مثلي أداء الأول. ولو كان لدينا معالجين من نفس العائلة لكن أولهما أحادي النواة والآخر ثنائي النواة فإن أداء الثاني نظريا يمكن أن يصل إلى مثلي الأول لكن عمليا لن يتحقق هذا لأنه يتطلب أن يكون الكود المراد تنفيذه متوازيا وليس متسلسلا (أي لا يعتمد بعضه على بعض). كلما زادت الأنوية زادت سلاسة الجهاز عند تنفيذ أشياء بالتوازي مثلا تخيل نفسك تتصفح الإنترنت ويعمل برنامج في الخلفية على مزامنة البريد وآخر على عمل hotspot ورابع يشغل راديو FM أو صوتيات MP3 في الخلفية لأنه إن كان أحادي النواة يجب أن تتم كل عملية خلال الشريحة الزمنية المخصصة لها وإلا شعرت بما يعرف ب lag. معمارية المعالج وحتى نتعرف على المعالجات في عالم الأجهزة المنضدة embedded devices، أغلبها تكون ذات بنية RISC وتحديدا معمارية ARMv7 في عالم الهواتف الذكية والحواسيب اللوحية ومعمارية MIPS في الكثير من الأجهزة مثل مقاسم الشبكة الذكية network switches وربما تجد معالجات PowerPC في بعض الطابعات. شركة ARM لا تصنع معالجات ARM ولا تبيعها وإنما هي متفرغة للتصميم فقط وتربح من بيع رخص تلك التصاميم. تعتمد معالجات ARM على مبدأ RISC أي طقم التعليمات المختزلة فهي تحتوي على الحد الأدنى من التعليمات التي تمكنك من القيام بأي مهمة وهي بذلك الاختزال تقلل التعقيد واستهلاك الطاقة وتقلل الكلفة وعدد الترانزيستورات (مثلا إن أكثر معالجات ARM حداثة وتعقيدا لا يزيد عن 35 ألف ترانزيستور) بعكس CISC المعقدة كتلك من إنتل التي تحتوي على عدة ملايين من الترانزيستورات. أغلب أجهزة أندريود في السوق مبنية على طقم تعليمات ARMv7 لكن يمكنك أن تجد بعضها على ARMv6 مثل Samsung Galaxy Y. لك أن تتخيل أن سعر ترخيص تصميم ARMv6 سيكون رمزي عند ظهور ARMv7 والذي سيظل مرتفعا إلى حين ظهور الجيل الذي يليه. وكل جيل جديد من عائلة ARM يضيف المزيد من توفير الطاقة والمزيد من الأداء (حتى عند نفس تردد الساعة). تضم عائلة تعليمات ARMv7 عددا من المعالجات أشهرهما Cortex-A9 و Cortex-A15 وهذا الأخير أسرع من A9 ب 40% عند نفس التردد وعدد الأنوية. الصورة أدناه تبين أن حاسب Samsung ChromeBook برقاقة Exynos 5 Dual SoC ثنائيةالنواة تغلب على معالج Tegra 3 رباعي النواة وكلاهما من عائلة تعليمات ARMv7 ناهيك عن تغلبه على atom (المعالج الخاص بالأجهزة المحمولة والمنضدة من إنتل) بل كاد أن يصل إلى أداء i3 (وهو معالج صمم للأداء الخاص بالحواسيب المكتبية وليس لتوفير الطاقة) والسبب هنا هو أنه من معمارية Cortex A15. (في الصورة التالية الخط الأقصر يعني أداءً أفضل): معالجات ARM الحديثة تهزم Intel Atom وتقترب من i3 تخطط سامسونغ لعمل معالج تطبيقات Exynos 5 octa بثمان أنوية (4 منها A15 و 4 أخرى A7) وهو ما يعرف باسم big.LITTLE حيث توفر الطاقة من خلال توجيه أغلب العمليات التقليدية إلى الأنوية الصغيرة لكن عند الحاجة تتدخل الأنوية الكبيرة لتعطيك الأداء الذي تريده. صورة من برنامج CPU Spy المعالج يقضي أغلب الوقت وهو في سبات هذه التقنية مفيدة لأنه كما نلاحظ في الصورة السابقة (مأخوذة من جهاز Samsung Galaxy SL i9003 من خلال برنامج CPU Spy) يقضي المعالج أغلب الوقت وهو يغط في سبات عميق وبالدرجة الثانية تجده يعمل بتردد 300 MHz مع أنه يدعم ترددات أعلى إلا أنه لا يحتاجها للقيام بالعمليات التقليدية. من أشهر معالجات التطبيقات التي تتقبل تعليمات ARMv7 لدينا أيضا عائلة Snapdragon من Qualcomm الأمريكية والتي تعتمد على CPU متوافق ARMv7 إلا أنه من تصميم الشركة واسمه Krait وهو يشبه إلى حد بعيد ARM Cortex-A15. تعتبر معالجات Snapdragon من أقوى المعالجات وأسرعها مثلا Snapdragon 800 MSM8974 فهو يحتوي على معالج Krait 400 بسرعة تصل إلى 2.3 غيغاهيرتز يقول موقع engadget أن معالج التطبيقات S4 تفوق على Tegra 3 في كل الاختبارات. إن شدة التنافس المحموم أخرجت شركة Texas Instruments الأمريكية العريقة من المنافسة حيث أنها أعلنت أن شدة المنافسة جعلتها توقف معالجها OMAP قبل صدور OMAP 5 مع أن OMAP 4 من أنجح المعالجات فهو مستخدم في عدد من الأجهزة الخلوية موتورولا وجهاز Samsung Galaxy S i9003 بل وعدد من لوحات الهواة مثل beagel board و Panda board هناك 3 من الشركات الصينية المتميزة التي استطاعت أن تضع لأنفسها موضع قدم في هذه المنافسة المحمومة وهي: Allwinner مثل معالج A31 رباعي النواة من عائلة ARM Cortex-A7 RockChip مثل معالج rk3066 ثنائي النواة من عائلة ARM Cortex-A9 و rk3166 رباعي النواة من نفس العائلة. Amlogic وهي في الغالب من عائلة ARM Cortex-A9 مؤخرا قامت شركة Ingenic الصينية بالتطوير على معالجات MIPS حتى وصلت بها إلى مستوى يسمح بوضعها على أجهزة لوحية وذلك من خلال عائلة معالجات التطبيقات XBrust مثل JZ4770 حيث تقول الشركة أنه قد تصل سرعته إلى 1.2 غيغاهيرتز ب 1.2 فولت مستهلكة أقل 90 mW (ميللي-واط) وتأمل الشركة أن تتمكن في عام 2014 من الانتقال إلى تقنية 20 نانومتر وزيادة عدد الأنوية وأن يكون 64-بت ..إلخ وقبل هذه الإنجازات كان مجرد معالجات لا تتجاوز زرعتها 100 أو 300 ميغاهيرتز. وطبعا لا مجال لمقارنة هذه المعالجات مع ARM التي ذكرنا أنه وصلت إلى 8 أنوية من معالجات CPU في رقاقة واحدة. نوع وحدة معالجة الرسوميات GPU إن وحدة معالجة الرسوميات GPU الموجودة داخل الرقاقة تشبه في وظيفتها بطاقة الشاشة في عالم الحواسيب الشخصية لكن الفرق هو أنه لا يمكنك تغييرها. هذه الوحدة هي عنق الزجاجة بالنسبة لأداء الألعاب ومؤثرات الحركة فجهاز بمعالج CPU سريع لن يؤدي الغرض مهما كانت سرعته ما لم يملك GPU مناسب. لو كان معالج GPU قوي ويحتوي تعليمات سريعة لكن حصته من السوق قليلة وآخر أقل قوة لكن له حصة كبيرة من السوق وعلاقات مع مصنعي الألعاب تجعلهم يختبرون برامجهم على هذا المعالج دون ذاك عندها قد تحصل على أداء سريع على المعالج قوة وسرعة بينما قد لا تعمل اللعبة مطلقا على المعالج القوي. في عالم الأنظمة على رقاقة SoC هناك مزايا معينة موجودة بشكل جاهز مثلا مخرج HDMI تكون بأخذ السن رقم كذا وكذا من الرقاقة وتوصيلها مباشرة إلى سن كذا وكذا من المخرج دون أي وساطات. لكن أحيانا هناك اختيار للمصنع النهائي بعدم القيام بتوصيلها من الأساس مثلا غوغل لم تعمل مخرج HDMI ولم تعمل مدخل micro sd في حاسب Nexus 7 في حين أن Acer A110 يستعمل نفس الرقاقة وهي Tegra 3 لكنها تحتوي مخرج HDMI ومدخل micro SD (والسبب واضح لأن غوغل تريد منا أن نستهلك المحتوى من متجرها). كذلك عليك الأخذ بعين الاعتبار طرق ترميز الوسائط المدعومة عتاديا في الرقاقة نفسها فهي تؤثر على سرعة تشغيل الوسائط وعلى استهلاك الطاقة يمكنك ملاحظة ذلك من خلال النظر إلى كلمة HW في مشغل الفيديو MX Player. mx-player مثلا يمكنني تشغيل ملف فيديو full HD من نوع mp4 على جهاز لوحي متواضع برقاقة rk2918 في حين يعجز عن تشغيله بشكل سلس جهاز Samsung galaxy SL (لأنه يستخدم البرمجيات لفك ترميز الفيديو فلا يستطيع إنجاز ذلك في الوقت المناسب). أهم الأنواع ومشكلة التوافقية أهم أنواع GPU هي من تصميم ARM وهي Mali-400 وتجدها في العديد من الرقاقات وتسمح بتعدد الأنوية وهي الأكثر توافقية على الإطلاق لأنها من شركة ARM ومن السهل على الشركات أن تشتري رخصتها ومن أشهر الأجهزة التي تحتويها سامسونج S2 و S3 كما أنها موجودة في في عدد من الأجهزة الأرخص مثل Rockchip rk3066 و Allwinner A13 و AMLogic 8726-MX. من معالجات GPU القوية التي نجدها في الكثير من الأجهزة الشائعة iPhone و Samsung SL i9003 و Samsung S i9000 و Samsung Galaxy Nexus هو من تصميم PowerVR تحديدا طراز SGX ولأن الكثير من الألعاب بدأت على iPhone قبل أندرويد فإن توافقية PowerVR مع الألعاب عالية. إلا أنه يجدر بنا أن نشير إلى أن سامسونغ ركزت مؤخرا على Mali كما في S2 و S3 وغيرها. وهناك معالج ULP GeForce من nvidia المعروفة والعريقة في هذا المجال الموجود في رقاقات Tegra وكنت سأشك في توافقية الألعاب معه لولا أن إعلان غوغل عن استعمال Tegra 3 في Nexus 7 تضمن تجربته على الكثير من الألعاب والتحقق منها وهذه الرقاقة ليست حكرا على Nexus7 بل موجودة في الكثير من الأجهزة اللوحية. وهناك ألعاب مصممة لهذا المعالج دون غيره. وبما أننا ذكرنا nVidia فإنه علينا أن نذكر ATI وذلك بأن نعرج على معالج Adreno والذي كان يعرف باسم ATI Imageon والذي لاحقا بيع إلى شركة Qualcomm وأصبح ضمن رقاقات Snapdragon التي تنتجها وهو من المعالجات المميزة. وإن بحثت جيدا قد تجد معالج Vivante GC860 في بعض الرقاقات مثل rockchip rk2918 (من عالم ARM) و Ingenic JZ4770 (من عالم MIPS) لكنك قد تواجه مشاكل عديدة في التوافقية مع هذا المعالج حيث أنه لا يوجد جهاز مشهور يحمله. هناك برنامج اسمه Chainfire3D يعمل كوسيط يستقبل تعليمات تناسب معالج معين (مثل Tegra) ويحولها إلى تعلميات تناسب معالجك لكن من عيوبه أنه يعمل على على أنظمة android 2.x فقط ويحتاج صلاحيات الجذر root. تأثير دقة الشاشة على الأداء حتى نقارن بين نوعين مختلفتين يجب أن نأخذ بعين الاعتبار دقة الشاشة فالمعالج المتواضع الموجود في Samsung Galaxy Y يستطيع تشغيل الكثير من الألعاب بسلاسة ليس بسبب قوته بل لأن دقة الشاشة فيه هي 320×240 فالمطلوب منه عند عرض كل إطار معالجة هذا الكم الضئيل من النقاط. في حين يحتاج Samsung Nexus 10 بدقة 2560×1600 بيكسل معالجة رقم فلكي من النقاط يزيد عن 50 ضعف Galaxy Y أي أكثر من 5000% من عدد النقاط فيه. وحتى لو قارناه بجهاز حديث مثل Nexus 7 ذي 1280×800 بيكسل فلا يزال Nexus 10 يشكل 4 أمثال عدد النقاط (بكلمات أخرى يحتاج معالج الرسوميات في Nexus 10 أن يكون أسرع 4 مرات من الذي في Nexus 7 حتى يعطي نفس الأداء) سرعة ساعة معالج الرسوميات هناك الكثير من الأجهزة اللوحية الرخيصة تحتوي على GPU قوي من نوع Mali 400 إلا أنه يعمل بتردد منخفض جدا مثل Amlogic AML872 الذي يحتوي على Mali 400 بسرعة 250 MHz في المقابل فإن رقاقة Allwinner A10 تحتوي نفس معالج GPU لكن بسرعة 300 MHz ويمكنه معالجة وسائط HD حتى 2160P. في المقابل يعمل معالج GPU GC860 في RK2819 بسرعة 600 MHz ولأن معالج GPU في الأمثلة الثلاثة أحادية النواة فإن السرعة مهمة جدا وتؤثر بشكل مباشر على الأداء. عدد أنوية معالج الرسوميات على النقيض تماما من المعالجات العامة CPU فإن طبيعة عمل المعالجات الرسومية GPU تناسب تعدد الأنوية بشكل أكبر لأن الكثير من المهام الرسومية يمكن القيام بها بالتوازي لذا فإن زيادة عدد الأنوية الرسومية ينعكس مباشرة على الأداء (يعني يمكنك معالجة ضعفي عدد الأطر FPS أو ضعفي دقة العرض عند مضاعفة عدد الأنوية). بل إن الكثير من المسائل الرسومية يمكن تصنيفها على أنها SIMD (تنفيذ تعليمة واحدة على بيانات متعددة). مثلا رقاقة Exynos 4210 في جهاز Galaxy Tab 7.7 تحتوي على GPU من نواع Mali 400MP4 و MP4 هنا تعني رباعية النواة تعمل بتردد 266 MHz فقط لكنها بالتأكيد أسرع بكثير من أي رقاقة أحادية النواة وإن كانت بضعف السرعة. إضافة إلى رفع الأداء فإن تعدد الأنوية يمكن أن يساعد في توفير الطاقة عند عدم الحاجة لها حيث يمكن الاكتفاء بتشغيل عدد أقل من الأنوية. إن من أكثر الرقاقات شهرة في كثرة الاعتماد على تعدد الأنوية هي Tegra 3 فهي تحتوي على 12 نواة من معالج الرسوميات GPU تعمل بتردد يزيد عن 400 MHz. زيادة عدد الأنوية فوق حد معين قد تصبح دون قيمة مثلا رقاقة Exynos 5250 في Samsung Nexus 10 يحتوي على GPU من نوع Mali-T604 يحتوي 4 أنوية رسومية فقط (بسرعة تفوق ال 500 MHz) يمكنها هزيمة أي معالج رسومي آخر والتكفل بالدقة الفلكية لشاشة ذلك الجهاز.
Posted on: Sun, 30 Jun 2013 07:26:44 +0000

Trending Topics



Recently Viewed Topics




© 2015