Anonim

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

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

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

بعض التاريخ

قبل بناء المعالجات ذات النوى المتعددة ، حاول الأشخاص والشركات مثل Intel و AMD إنشاء أجهزة كمبيوتر مزودة بوحدات معالجة مركزية متعددة. ما يعنيه هذا هو أن هناك حاجة إلى اللوحة الأم مع أكثر من مقبس وحدة المعالجة المركزية. لم يكن هذا أكثر تكلفة فحسب ، بسبب الأجهزة المادية اللازمة لمقبس وحدة المعالجة المركزية آخر ، ولكن أيضًا زاد زمن الوصول بسبب زيادة الاتصالات التي كانت مطلوبة بين المعالجين. تعين على اللوحة الأم تقسيم البيانات بين موقعين منفصلين تمامًا في جهاز الكمبيوتر بدلاً من إرسالها بالكامل إلى المعالج. المسافة المادية تعني في الواقع أن العملية أبطأ. لا يعني وضع هذه العمليات على شريحة واحدة ذات نوى متعددة فقط وجود مسافة أقل للسفر ، ولكنه يعني أيضًا أن النوى المختلفة يمكنها مشاركة الموارد لأداء مهام ثقيلة بشكل خاص. على سبيل المثال ، تم تطبيق رقائق Intel Pentium II و Pentium III في إصدارات مع معالجين على لوحة أم واحدة.

بعد فترة من الوقت ، كانت المعالجات بحاجة إلى أن تكون أكثر قوة ، لذلك توصل مصنعو أجهزة الكمبيوتر إلى مفهوم الترابط الفائق. جاءت الفكرة نفسها من شركة Intel ، وتم طرحها لأول مرة في عام 2002 على معالجات خادم Xeon الخاصة بالشركة ، وفيما بعد على معالجات سطح المكتب Pentium 4 الخاصة بها. لا يزال الترابط التشعبي يستخدم حتى الآن في المعالجات ، وهو الفرق الرئيسي بين رقائق i5 من Intel وشرائح i7. يستفيد بشكل أساسي من حقيقة أن هناك غالبًا موارد غير مستخدمة في المعالج ، وتحديداً عندما لا تتطلب المهام قدرًا كبيرًا من طاقة المعالجة ، والتي يمكن استخدامها لبرامج أخرى. يقدم المعالج الذي يستخدم الترابط التشعبي أساسًا نظام التشغيل كما لو كان يحتوي على قلبين. بالطبع ، ليس لديها حقًا نواة ، لكن بالنسبة للبرنامجين اللذين يستخدمان نصف طاقة المعالجة المتاحة أو أقل ، فقد يكون هناك أيضًا نواة بسبب حقيقة أنهما يمكنهما الاستفادة من كل القوة التي المعالج لهذا العرض. ومع ذلك ، سيكون الترابط التشعبي أبطأ قليلاً من المعالج ذي النواة عندما لا تكون هناك قوة معالجة كافية للمشاركة بين البرنامجين باستخدام الجهاز الأساسي.

يمكنك العثور على مقطع فيديو ثاقب يقدم شرحًا موجزًا ​​أكثر تفصيلًا للفرط الترابط هنا.

متعدد المعالجات

بعد الكثير من التجارب ، تمكنت وحدات المعالجة المركزية ذات النوى المتعددة من بناء أخيرًا. ما يعنيه هذا هو أن معالجًا واحدًا يحتوي على أكثر من وحدة معالجة واحدة. على سبيل المثال ، يحتوي المعالج ثنائي النواة على وحدتي معالجة ، بينما يحتوي المعالج رباعي النواة على أربعة ، وهكذا.

فلماذا وضعت الشركات معالجات متعددة النوى؟ حسنًا ، أصبحت الحاجة إلى معالجات أسرع أكثر وضوحًا ، لكن التطورات في المعالجات الأساسية الواحدة كانت تتباطأ. من الثمانينيات وحتى عام 2000 ، تمكن المهندسون من زيادة سرعة المعالجة من عدة ميجاهرتز إلى عدة جيجاهيرتز. فعلت شركات مثل Intel و AMD عن طريق تقليص حجم الترانزستورات ، مما أتاح المزيد من الترانزستورات في نفس المساحة ، وبالتالي تحسين الأداء.

بسبب حقيقة أن سرعة ساعة المعالج ترتبط ارتباطًا كبيرًا بعدد الترانزستورات التي يمكن احتواؤها على رقاقة ، عندما بدأت تقنية تقلص الترانزستور في التباطؤ ، بدأت أيضًا زيادة سرعة سرعات المعالج في التباطؤ. على الرغم من أن هذا لم يحدث عندما علمت الشركات لأول مرة عن المعالجات متعددة النواة ، إلا أنها بدأت عندما بدأت في تجربة المعالجات متعددة النواة لأغراض تجارية. في حين تم تطوير المعالجات متعددة النواة لأول مرة في منتصف الثمانينيات ، فقد تم تصميمها للشركات الكبيرة ، ولم تتم إعادة النظر فيها حتى بدأت التكنولوجيا أحادية النواة في التباطؤ. تم تطوير أول معالج متعدد النواة من قبل Rockwell International ، وكان إصدارًا من شريحة 6501 مع اثنين من المعالجات 6502 على رقاقة واحدة (مزيد من التفاصيل متوفرة هنا في إدخال Wikipedia).

ماذا يفعل المعالج متعدد النوى؟

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

استخدام النوى المتعددة لا يقتصر فقط على برامج متعددة. على سبيل المثال ، يعرض Google Chrome كل صفحة جديدة بعملية مختلفة ، مما يعني أنه يمكن الاستفادة من النوى المتعددة في وقت واحد. ومع ذلك ، فإن بعض البرامج هي ما يطلق عليه الخيوط المفردة ، مما يعني أنها لم تتم كتابتها لتكون قادرة على استخدام النوى المتعددة وبالتالي لا يمكنها القيام بذلك. يتم تشغيل خيوط المعالجة المتعددة مرة أخرى هنا ، مما يتيح لـ Chrome إرسال صفحات متعددة إلى "مركزين منطقيين" على جوهر واحد حقيقي.

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

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

كيف تعمل المعالجات متعددة النوى؟

أولاً ، يجب أن تتعرف اللوحة الأم ونظام التشغيل على المعالج وأن هناك عدة نوى. لا تحتوي أجهزة الكمبيوتر الأقدم سوى على نواة واحدة ، لذلك قد لا يعمل نظام التشغيل الأقدم بشكل جيد للغاية إذا حاول المستخدم تثبيته على جهاز كمبيوتر أحدث ذي نوى متعددة. على سبيل المثال ، لا يدعم نظام التشغيل Windows 95 الترابط المتعدد أو النوى المتعددة. تدعم جميع أنظمة التشغيل الحديثة المعالجات متعددة النواة ، بما في ذلك أمثال Windows 7 و 8 و 10 التي تم إصدارها حديثًا و OS X 10.10 من Apple.

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

متعدد النواة المعالج

داخل المعالج ، توجد مستويات متعددة من ذاكرة التخزين المؤقت تحتفظ ببيانات للتشغيل أو العمليات التالية للمعالج. تضمن هذه المستويات من ذاكرة التخزين المؤقت عدم اضطرار المعالج إلى البحث عن مكان للعثور على العملية التالية ، مما يوفر الكثير من الوقت. المستوى الأول من ذاكرة التخزين المؤقت هو ذاكرة التخزين المؤقت L1. إذا تعذر على المعالج العثور على البيانات التي يحتاجها في العملية التالية في ذاكرة التخزين المؤقت L1 ، فإنه يتطلع إلى ذاكرة التخزين المؤقت L2. ذاكرة التخزين المؤقت L2 أكبر في الذاكرة ولكن أبطأ من ذاكرة التخزين المؤقت L1.

معالج أحادي النواة

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

هناك أيضًا طرق مختلفة للتعامل مع ذاكرة التخزين المؤقت للفرق المختلفة. على سبيل المثال ، يقوم البعض بتكرار البيانات الموجودة على ذاكرة التخزين المؤقت L1 على ذاكرة التخزين المؤقت L2 ، والتي تعد في الأساس طريقة للتأكد من أن المعالج يمكنه العثور على ما يبحث عنه. هذا ، بالطبع ، يستغرق ذاكرة أكبر في ذاكرة التخزين المؤقت L2.

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

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

من المحتمل أننا سنستمر في رؤية تطور المزيد من النوى. بالتأكيد ستستمر سرعات ساعة المعالج في التحسن ، وإن كان ذلك بمعدلات أبطأ من ذي قبل. على الرغم من أنه ليس من غير المألوف الآن رؤية معالجات ثماني النواة في أشياء مثل الهواتف الذكية ، إلا أننا سرعان ما تمكنا من رؤية معالجات تحتوي على عشرات النوى.

أين تعتقد تتجه تكنولوجيا المعالجة متعددة النواة بعد ذلك؟ اسمحوا لنا أن نعرف في التعليقات أدناه ، أو عن طريق بدء موضوع جديد في منتدى مجتمعنا.

كل شيء عن المعالجات متعددة النواة: ما هي ، وكيف تعمل ، ومن أين أتوا