تصميم الكمبيوتر مثل لعبة البازل - محمد زهران - بوابة الشروق
الخميس 12 ديسمبر 2024 7:31 ص القاهرة

احدث مقالات الكاتب

شارك برأيك

هل تؤيد دعوات مقاطعة بعض المطاعم التي ثبت دعمها لجنود الاحتلال؟

تصميم الكمبيوتر مثل لعبة البازل

نشر فى : الجمعة 8 نوفمبر 2024 - 7:00 م | آخر تحديث : الجمعة 8 نوفمبر 2024 - 7:00 م

عندما بدأ العالم فى استخدام أجهزة الكمبيوتر كان الهدف الأساسى القيام بالعمليات الحسابية بطريقة صحيحة وسريعة وكانت المؤسسات العسكرية هى من بدأ فى استخدام تلك الأجهزة. مع انتشار الأجهزة على نطاق أوسع بعد انتهاء الحرب العالمية الثانية بعدة سنوات بدأت الشركات الكبرى والجامعات فى استخدام أجهزة الكمبيوتر وحدث تطور فى حجمها، أى أصبح الحجم أصغر والسرعة أعلى. عندما وصلنا إلى سبعينيات القرن العشرين بدأت أجهزة الكمبيوتر تصغر فى الحجم مما أدى إلى بداية استخدامها فى المنازل. عندما وصلنا إلى الثمانينيات بدأت أجهزة الكمبيوتر الشخصى تنتشر فى المنازل وكلنا نتذكر أجهزة السنكلير والكومودور وأى بى إم فى ذلك الوقت، سيتذكر هذا الكلام مواليد السبعينيات فما قبلها. مع وصول مرحلة التسعينيات بدأت تظهر أجهزة الكمبيوتر المحمول ومعها ظهرت الحاجة ليس فقط إلى أجهزة سريعة، ولكن أيضا إلى أجهزة تستهلك طاقة أقل حتى لا تحتاج إلى شحن بطارية الكمبيوتر المحمول بعد عدد قليل من الساعات، وبالنسبة لأجهزة الكمبيوتر العملاقة المستخدمة فى الحكومات والجامعات والشركات فإن فاتورة الكهرباء لتلك الأجهزة تشجع جدا على تقليل استهلاك الكهرباء.
مع ظهور الإنترنت للعامة وانتشار استخدامه منذ النصف الثانى من القرن الماضى ظهرت الحاجة إلى أجهزة آمنة من الفيروسات والاختراقات. زادت أيضا استخدامات الكمبيوتر فى المجالات الحيوية مثل المجال الطبى وداخل غرف العمليات وأيضا فى الحروب والكثير من التطبيقات العلمية ما جعل الناس تريد أيضا أجهزة لا تعطل (وقد تكلمنا عن أجهزة الكمبيوتر التى لا تعطل فى مقال سابق بعنوان «جهاز كمبيوتر لا يعطل أبدا»). الآن ومع استخدام الجميع لأجهزة كمبيوتر مختلفة الأشكال والأحجام من الساعة الذكية إلى التليفون الذكى إلى التابلت واللابتوب أصبح سعر الجهاز من العوامل المهمة.
هذه الرحلة السريعة تقول لنا إننا نريد أجهزة كمبيوتر تعمل بطريقة صحيحة وسريعة وتستهلك طاقة قليلة ويصعب اختراقها ولا تعطل وثمنها فى متناول أغلب الناس. ترتيب هذه الصفات يعتمد على الاستخدام، فالاستخدام العسكرى يضع التأمين وعدم العطل فى المقدمة فى حين أن اللابتوب المستخدم من العامة يتخذ الثمن أحد المراكز المتقدمة. المهم فى كل تلك القصة أنه لا توجد تكنولوجيا واحدة فى العالم تستطيع توفير كل تلك المميزات، لهذا يتم استخدام تكنولوجيات مختلفة ورقائق (computer chips) مختلفة تعمل معا للوصول إلى المميزات المطلوبة لجهاز الكمبيوتر، مثل لعبة البازل التى نجمع قطعها لنصل إلى الصورة الكبيرة، وهذا عنوان مقالنا اليوم.
...
ذكرنا فى مقال سابق عن أن الترانزستور هو المكون الأساسى لجميع رقائق الكمبيوتر بمختلف أنواعها وأن جوردن موور (أحد مؤسسى شركة إنتل) قد تنبأ سنة 1965 أن حجم الترانزستور سينكمش بحيث نستطيع وضع أعداد أكبر منه فى رقائق الكمبيوتر وبالتالى نصمم وننتج رقائق أكثر تقدما، استمرت نبوءة جوردن موور صحيحة لمدة أكثر من نصف قرن، والآن توقفت، لمزيد من التفاصيل عن هذا القانون أو النبوءة راجع مقالنا «موت القانون الذى حكم عالم تصنيع الكمبيوتر لعقود». مع توقف هذا القانون أصبح من الصعب بناء رقائق أكثر تقدما وبالتالى عدم تحقيق الاحتياجات التى ذكرناها من سرعة واستهلاك طاقة إلخ، فما العمل؟
الحل الذى تستخدمه شركات تصميم الكمبيوتر حاليا هو استخدام أسلوب الرقائق المتخصصة (specialized chips) ويطلق عليها أيضا (accelerators) أو «المسرعات» وإن كنت شخصيا لا أستسيغ تلك الترجمة الحرفية. هذه الرقائق تتميز أن لها كفاءة عالية جدا لبعض أنواع البرمجيات (أى سرعة واستهلاك طاقة أقل… إلخ) ولكن كفاءتها أقل كثيرا للأنواع الأخرى من البرمجيات. الآن بدلاً من استخدام رقائق متقدمة وكفاءتها معقولة لكل البرمجيات أصبحنا نستخدم تلك الرقائق المتخصصة.
...
قد يتساءل البعض وهل يعلم مصممو أجهزة الكمبيوتر البرمجيات التى سأستخدمها؟ هو سؤال وجيه لكن الإجابة هى نعم، فكل عدة سنوات هناك مجموعات بحثية وبعض المؤسسات تدرس السوق وتقوم بعمل قائمة بأنواع البرمجيات التى يستخدمها أغلب الناس. وحتى إذا استخدمت أنت برمجيات مختلفة عما فى تلك القوائم فكل أجهزة الكمبيوتر بها رقائق غير متخصصة كفاءتها متوسطة لأغلب البرمجيات.
أصبحت مهمة مصممى أجهزة الكمبيوتر هو اختيار الرقائق التى سيضعونها فى جهاز اللابتوب، أو التابلت، أو التليفون، أو الساعة، أو أجهزة الكمبيوتر فائقة السرعة (supercomputers).
هناك العديد من الرقائق المتخصصة وهناك المزيد يظهر كل عدة أشهر. لنرى بعض الأمثلة.
...
رقائق الرسوم أو ما نسميها (Graphics Processing Units) وهو ما كنا نطلق عليه فى الماضى «كارت الشاشة» هى رقائق كانت مصممة أساسا لبرمجيات الرسوم المتحركة والألعاب… إلخ، كما يدل اسمها. لكن المفاجأة أن علماء الكمبيوتر وجدوا أن العمليات الحسابية التى تقوم بها تلك الرقائق من أجل الرسوم المتحركة تشبه إلى حد كبير تلك المستخدمة فى الذكاء الاصطناعى الآن وهى مفاجأة جاءت لتدفع شركة NVIDIA بقوة إلى الأمام لأنها شركة متخصصة فى تصنيع تلك الرقائق. أصبحت تلك الرقائق غالية الثمن جدا لأن الطلب زاد عليها بشكل ضخم مع انتشار تطبيقات الذكاء الاصطناعى.
رقائق الشبكات العصبية (Neural Processing Units) وهى أيضا متخصصة فى برمجيات الذكاء الاصطناعى لكن فى نوع محدد منها وهو الذى نسميه تعليم الآلة (machine learning) والتعليم العميق (deep learning) وهى رقائق مصممة بحيث تشبه الخلايا العصبية فى المخ، ونجد تلك الرقائق فى الكثير من التليفونات الذكية.
الرقائق القابلة للبرمجة ميدانياً ويطلق عليها اختصارا (FPGA) وهى رقائق كانت موجودة منذ عقود أُعيد اكتشافها من جديد بتطبيقات جديدة، وهى رقائق تقوم بتعديل نفسها لتحسن كفاءتها فى البرمجيات، فكلمة «ميدانيا» معناها أنه بعد البدء فى استخدام تلك الرقائق فإن تصميمها الداخلى يمكن تعديله، هذا طبعا تبسيط مخل جدا لكنه يعطى فكرة عامة، الكثير من الأجهزة العملاقة لشركة مايكروسوفت والتى تقوم بتشغيل خدمات (Azure) تستخدم تلك الرقائق.
...
كل واحدة من تلك الرقائق لها طريقة مختلفة فى البرمجة، وهذا يضع عبئا كبيرا على مطورى البرمجيات لأنه يحتاج أن يتعلم كيفية التعامل مع تلك البرمجيات كل على حدة ثم كيفية جعلهم يتكاملون مع بعضهم ليصلوا إلى جهاز كمبيوتر يتمتع بالمزايا التى ذكرناها فى بداية المقال. فهل نحن مستعدون لذلك فى جامعاتنا؟ وشركاتنا التى تصمم البرمجيات؟ أم نستهلك البرمجيات التى يكتبها آخرون؟
...
ماذا نستخلص من كل ما سبق؟ هناك عدة أشياء نستطيع العمل عليها فى بلادنا:
• تصميم رقائق متخصصة هو سوق مفتوح وهناك العديد من الشركات فى العالم تقوم بتصنيع نوع واحد من الرقائق لنوع معين من البرمجيات مثل استخدام الذكاء الاصطناعى ونحن نستطيع المنافسة لأن عندنا طلابا وباحثين لا يقلون عمن فى الخارج ويحتاجون فقط الكثير من التشجيع والقليل من الإمكانيات، لاحظ أننى أتكلم عن التصميم وليس التصنيع.
• يجب زيادة جرعات البرمجة لتلك الرقائق المتخصصة وهى تختلف عن البرمجيات العادية التى يتم تدريسها منذ عقود فى الجامعات.
• يجب تدريب الطلاب والباحثين على التعامل مع عدة رقائق مرة واحدة أى البرمجية بالتوازى (parallel programming).
• يجب تدريب الطلاب على البرمجة من أجل السرعة والبرمجة من أجل استهلاك طاقة أقل والبرمجة مع التعامل مع الأعطال… إلخ وهى نقاط متقدمة نهملها فى أغلب الجامعات.
ونحن على أعتاب الثورة الصناعية الخامسة هل سنكتفى بمقعد المتفرجين أم سنكون من المنافسين؟

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