سؤال لماذا لدينا وحدات المعالجة المركزية (CPUs) مع كل النوى بنفس السرعة وليس مجموعات من سرعات مختلفة؟


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

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

فمثلا:

  • Intel Core i5-7600K ، تردد أساسي 3.80 غيغاهرتز ، 4 نوى ، 4 خيوط
  • Intel Core i7-7700K ، تردد أساسي 4.20 غيغاهرتز ، 4 نوى ، 8 خيوط
  • AMD Ryzen 5 1600X ، التردد الأساسي 3.60 جيجاهرتز ، 6 قلب ، 12 موضوع
  • AMD Ryzen 7 1800X ، التردد الأساسي 3.60 جيجاهرتز ، 8 قلب ، 16 موضوع

فلماذا نرى هذا النمط من النوى المتزايدة مع كل النوى لها نفس سرعة الساعة؟

لماذا ليس لدينا متغيرات بسرعات مختلفة على مدار الساعة؟ على سبيل المثال ، اثنان من النوى "الكبيرة" والكثير من النوى الصغيرة.

للحصول على أمثلة ، بدلاً من ، قل ، أربعة مراكز في 4.0 غيغاهرتز (أي 4 × 4 غيغاهرتز ~ 16 غيغاهرتز كحد أقصى) ، ماذا عن وحدة المعالجة المركزية مع مركزين يعملان عند 4.0 غيغاهرتز لنقل ويقولان أربعة مراكز تعمل عند 2 جيجاهرتز (أي 2 × 4 جيغاهرتز + 4x2.0 غيغاهرتز ~ 16 غيغاهرتز كحد أقصى). ألن يكون الخيار الثاني جيدًا بنفس القدر في أحمال العمل المترابطة ، لكن من المحتمل أن يكون أفضل في أحمال العمل متعددة الخيوط؟

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


79
2018-06-24 13:25


الأصل


هناك العديد من الهواتف المتحركة ذات النوى السريعة والبطيئة ، وعلى جميع الخوادم الحديثة المتعددة النوى تقريبًا ، تقوم وحدة المعالجة المركزية بسرعات الساعة استنادًا إلى الحمل ، حتى أن بعضها يوقف تشغيل النوى عند عدم استخدامها. على كمبيوتر عام الغرض حيث لا تصمم لتوفير الطاقة إلا أن وجود نوعين فقط من النوى (وحدة المعالجة المركزية ووحدة معالجة الرسومات) يجعل المنصة أكثر مرونة. - eckes
قبل أن يتمكن برنامج جدولة الترابط من اختيار ذكي حول النواة الأساسية لاستخدامه ، سيكون عليه تحديد ما إذا كانت العملية يمكن أن تستفيد من النوى المتعددة. القيام بذلك بشكل موثوق به سيكون مشكلة كبيرة وعرضة للخطأ. بشكل خاص عندما يمكن لهذا أن يتغير ديناميكيًا وفقًا لاحتياجات التطبيق. في كثير من الحالات ، سيكون على المجدول أن يقوم باختيار مثالي دون المستوى عندما يكون أفضل النواة قيد الاستخدام. تجعل النوى المتماثلة الأشياء أكثر بساطة ، وتوفر أقصى قدر من المرونة ، وعموما لديها أفضل أداء. - LMiller7
لا يمكن القول بسرعات الساعة بشكل معقول أن تكون مضافة بالطريقة التي وصفتها. لا يعني وجود أربعة مراكز في 4 غيغاهرتز أن لديك "إجمالي" 16 غيغاهرتز ، ولا يعني أنه يمكن تقسيم هذا 16 غيغاهرتز إلى 8 معالجات تعمل في 2 غيغاهرتز أو 16 معالجات تعمل في 1 غيغاهرتز. - Bob Jarvis
إن مقدمة السؤال خاطئة ببساطة. وحدات المعالجة المركزية الحديثة قادرة تماما على تشغيل النوى بسرعات مختلفة - phuclv
وحدة المعالجة المركزية متعددة النواة: هل يمكن أن أقول أن لدي 3X2.1GHz = 6.3GHz CPU؟، كيف أحسب سرعة الساعة في المعالجات متعددة المراكز؟، - phuclv


الأجوبة:


هذا هو المعروف باسم المعالجة المتعددة غير المتجانسة (HMP) ويتم تبنيه على نطاق واسع بواسطة الأجهزة المحمولة. في الأجهزة القائمة على ARM التي تنفذ big.LITTLE، يحتوي المعالج على النوى بأداء مختلف وملفات تعريف طاقة ، على سبيل المثال ، بعض النوى تعمل بسرعة ولكن الكثير من القوة (هندسة أسرع و / أو ساعات أعلى) في حين أن البعض الآخر كفاءة في استخدام الطاقة ولكن بطيئة (هندسة أبطأ و / أو انخفاض ساعات). وهذا مفيد لأن استخدام الطاقة يميل إلى الزيادة بشكل غير متناسب مع زيادة الأداء بمجرد تجاوز نقطة معينة. الفكرة هنا هي الحصول على الأداء عندما تحتاج إليه وعمر البطارية عندما لا تكون.

على الأنظمة الأساسية لسطح المكتب ، يكون استهلاك الطاقة أقل أهمية ، لذا لا يعد ذلك ضروريًا حقًا. تتوقع معظم التطبيقات أن يكون لكل نواة خصائص أداء مشابهة ، وأن عمليات جدولة أنظمة HMP أكثر تعقيدًا من جدولة أنظمة SMP التقليدية. (يدعم Windows 10 تقنيًا HMP ، إلا أنه مخصص بشكل أساسي للأجهزة المحمولة التي تستخدم ARM big.LITTLE.)

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

في حين أن هناك عدد قليل من معالجات سطح المكتب التي لديها واحد أو اثنين من النوى قادرة على تشغيل أسرع من الآخرين ، فإن هذه الإمكانية تقتصر حاليا على بعض معالجات إنتل عالية الجودة (مثل Turbo Boost Max Technology 3.0) ولا تنطوي إلا على كسب بسيط في الأداء لتلك النوى التي يمكن أن تعمل بشكل أسرع.


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

خذ معالج افتراضية مع اثنين بسرعة بحيرة كابي (النوى من الجيل السابع الأساسية) وثمانية بطيئة Goldmont (أتوم) النوى. سيكون لديك ما مجموعه 10 نواة ، وقد تظهر أعباء العمل ذات الترابط العالي المحسنة لهذا النوع من المعالج زيادة في الأداء والكفاءة على مستوى رباعي النواة بحيرة كابي المعالج. ومع ذلك ، فإن الأنواع المختلفة من النوى لها مستويات أداء مختلفة للغاية ، ولا تدعم النوى البطيئة حتى بعض التعليمات التي يدعمها النوى السريعة ، مثل AVX. (ARM يتجنب هذه المشكلة عن طريق طلب كل من النوى الكبيرة و LITTLE لدعم نفس التعليمات.)

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

نهج مختلف لتصميم التطبيق ، أقرب إلى ما قد تفكر فيه في سؤالك ، سيستخدم GPU لتسريع أجزاء متوازية للغاية من التطبيقات. ويمكن القيام بذلك باستخدام واجهات برمجة التطبيقات مثل OpenCL و CUDA. بالنسبة إلى حل رقاقة واحدة ، تعزز AMD دعم الأجهزة لتسريع GPU في وحدات APU الخاصة بها ، والتي تجمع بين وحدة المعالجة المركزية التقليدية ووحدة معالجة الرسوميات المتكاملة عالية الأداء على الشريحة نفسها ، بنية نظام غير متجانسةعلى الرغم من أن هذا لم يشهد الكثير من امتصاص الصناعة خارج عدد قليل من التطبيقات المتخصصة.


81
2018-06-25 03:11



لدى Windows بالفعل مفهوم "التطبيقات" و "العمليات الخلفية" و "عمليات Windows". لذلك هذا لا يمتد إلى مستوى الأجهزة؟ - Jamie
Jamie تحصل عملية "الخلفية" على شرائح زمنية أصغر ومن المرجح أن تتم مقاطعتها. يقوم Windows 10 ، إلى حد ما ، بحساب أنظمة HMP ، على الرغم من عدم وجود الكثير من المعلومات حول كيفية ذلك. - Bob
لذلك أعتقد أنه بعد التعديل ، أجابنيbwDraco كثيرًا بالنسبة لي. إذا كان هناك معالج "مختلط" فإنه يمكن بسهولة دعم مجموعة التعليمات نفسها إذا تم بناؤها بهذه الطريقة ، لذلك سنحتاج إلى نوع من المجدول لاختيار النواة الصحيحة. أعتقد أن التطبيقات التي تستفيد من الذهاب إلى الكثير من النوى الصغيرة ربما تستفيد أكثر من الذهاب إلى الكثير والكثير من النوى الصغيرة. وبالتالي لدينا تسارع GPU. - Jamie
لاحظ أن حالة GPU لا تتاجر في قلبين كبيرين لـ 10 نوى صغيرة وبطيئة ، ولكن بالأحرى مكافئ (صعب للغاية) للتداول في نواة كبيرة لـ 1024 نواة صغيرة وبطيئة. موازية بشكل كبير ، وليس فقط أكثر توازنا. - Yakk
من المحتمل أن تحصل Intel على نواة Goldmont لتشغيل تعليمات AVX2 بدون الكثير من السليكون الإضافي (ببطء ، عن طريق فك التشفير إلى أزواج من 128b ops). يحتوي Knight's Landing (Xeon Phi) على قلب مقرّه Silvermont مع AVX512 ، لذلك ليس من المستحيل تعديل Silvermont. ولكن KNL يضيف تنفيذًا خارج عن التنفيذ لتعليمات المتجه ، بينما لا يقوم Silver / Goldmont العادي سوى بـ OOO للإعداد الصحيح ، لذا ربما يريد تصميمه أقرب إلى Goldmont من KNL. على أي حال ، مجموعات insn ليست مشكلة حقيقية. انها دعم نظام التشغيل والمنفعة الصغيرة التي هي العقبات الحقيقية أمام إنفاق مساحة المنطقة على جوهر الطاقة المنخفضة. - Peter Cordes


ما تسأله هو لماذا تستخدم الأنظمة الحالية المعالجة المتعددة المتماثلة عوضا عن المعالجة المتعددة غير المتماثلة.

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

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

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

على سبيل المثال ، لا يمكن تشغيل نوى Sandy Bridge و Ivy Bridge بسرعات مختلفة في نفس الوقت نظرًا لأن الحافلة L3 cache تعمل بنفس سرعة الساعة مثل النوى ، وذلك لمنع مشاكل التزامن التي عليهم إما تشغيلها عند هذه السرعة أو يتم إيقافه / إيقافه (الرابط: إنتل ساندي بريدج العمارة مكشوف). (تم التحقق أيضًا في التعليقات أدناه لـ Skylake.)

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

فيما يلي إجابات لبعض التعليقات أدناه:

تعزيز توربو يغير سرعة وحدة المعالجة المركزية لذلك يستطيع كن متغير

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

تحتوي بعض الهواتف على أكثر من وحدة معالجة مركزية من سرعات مختلفة

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

يحتوي الخادم الخاص بي المزود 2x Xeon E5-2670 v3 (12 مركزًا مع HT) على النوى بسرعة 1.3 غيغاهرتز و 1.5 جيجاهرتز و 1.6 جيجاهرتز و 2.2 غيغاهرتز و 2.5 غيغاهرتز و 2.7 جيجاهيرتز و 2.8 غيغاهرتز و 2.9 غيغاهرتز والعديد من السرعات الأخرى.

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

تشتمل معالجات Intel Haswell على منظمات جهد فلطية متكاملة تمكن الفولتية والترددات الفردية لكل نواة

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


66
2018-06-24 13:57



آه. أكثر mshorter وإلى هذه النقطة. +1 - Hennes
harrymc هناك كتل التزامن التي تديرها بشكل جيد. يعمل DRAM بشكل أبطأ من السرعة الأساسية ، ويمكنك تشغيل نوى Intel بسرعات مختلفة ديناميكيًا على الشريحة نفسها. - pjc50
تعمل معالجات Intel Core-series بسرعات مختلفة على نفس القالب طوال الوقت. - Nick T
إن الوجود الوحيد لأبنية LITTLE كبيرة الحجم وساعة تعزيز أساسية على مدار الساعة يثبت أنك غير صحيح. المعالجة المتعددة غير المتجانسة هي التيار السائد. هذا يستطيع يتم ذلك هو القيام به في الهواتف ، ولكن من أجل بعض الاسباب ليس في أجهزة سطح المكتب. - Agent_L
Agent_L: السبب هو التعقيد. وحدات المعالجة المركزية سطح المكتب مكلفة بالفعل بما فيه الكفاية بالفعل. لذا فأنا أكرر: كل شيء ممكن ، لكن السؤال الفعلي هو لماذا لم يتم ذلك ، وليس ما إذا كان يمكن القيام به. لا تهاجمني كما لو أنني زعمت أن هذا مستحيل - كل ما أقوله هو أنه معقد ومكلف للغاية ولأمر ضئيل للغاية في جذب اهتمام الشركات المصنعة. - harrymc


لماذا ليس لدينا متغيرات بسرعات مختلفة على مدار الساعة؟ أي. 2 النوى "كبيرة" والكثير من النوى الصغيرة.

من الممكن أن الهاتف في جيبك الرياضية بالضبط هذا الترتيب - ARM big.LITTLE يعمل بالضبط كما وصفت. ليس هناك اختلاف في سرعة الساعة فحسب ، بل يمكن أن تكون أنواعًا أساسية مختلفة تمامًا - عادةً ما تكون أبطأ تلك الساعات هي "خافت" (لا يوجد تنفيذ خارج عن عملية التشغيل وتحسينات أخرى في وحدة المعالجة المركزية).

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

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

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

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


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


47
2018-06-24 19:12



يجب أن يكون الاستدلال بسيطًا جدًا. أي تبديل مهمة غير طوعي (استخدام الوقت الكامل) هو إشارة إلى أن وحدة المعالجة المركزية بطيئة غير مناسبة للمهمة. الاستخدام المنخفض جداً وكل مفاتيح المهام الطوعية هو مؤشر على أنه يمكن نقل المهمة إلى وحدة المعالجة المركزية البطيئة. - R..
هناك مشكلة أخرى وهي أن 4 قلبات غبية 2 غيغاهرتز قد تأخذ حجمًا أكثر من 2 قلب نواة بسرعة 4 جيجاهرتز ، أو قد تكون أصغر وتستهلك طاقة أقل بكثير من النوى 4 جيجاهرتز ، ولكنها تعمل أيضًا بشكل أبطأ بكثير - phuclv
@ ر .: في خط المبدأ أنا أتفق معك ، ولكن حتى تمكين بعض دعم جدولة الأساسية لهذا رأيت تصادمات جوهرية سخيفة على لوحة ARM اعتدت ، لذلك يجب أن يكون هناك شيء آخر لذلك. بالإضافة إلى ذلك ، تتم كتابة معظم البرامج "العادية" ذات مؤشرات ترابط متعددة مع وضع SMP في الاعتبار ، لذلك ليس من غير المعتاد رؤية تجمعات خيطية كبيرة مثل العدد الإجمالي للنوى ، مع سحب الوظائف على النوى البطيئة. - Matteo Italia
Ramhound: الجزء ذو 10 نواة 120W لديه ميزانية قدرة 12W لكل نواة (ما عدا في وضع turbo أحادي النواة). هذا هو السبب في العثور على أعلى الساعات أحادية النواة في الأجزاء رباعية النوى ، على سبيل المثال ، على سبيل المثال. إنتل i7-6700k لديه ميزانية قدرة 91W لأربعة نوى: 22.75W لكل نواة مستدامة مع جميع النوى النشطة (في 4.0GHz حتى مع عبء العمل AVX2 + FMA مثل Prime95). هذا هو السبب أيضا في أن رأسية توربو أحادية النواة هي فقط 0.2 جيجاهيرتز إضافية ، مقابل 22-core Broadwell E5-2699v4 مع قاعدة 2.2GHz @ 145W ، توربو 3.6GHz. - Peter Cordes
Ramhound: تمت إضافة إجابة يتوسع في هذا. يبدو أن زيون كثير النواة بالضبط ما يبحث عنه البروتوكول الاختياري: تشغيل العديد من النوى منخفضة الطاقة ، أو قضاء الكثير من القوة في تشغيل مؤشر ترابط واحد سريع عندما يكون ذلك ممكنًا (توربو). - Peter Cordes


يميل الأداء في الألعاب إلى تحديد السرعة الأساسية الواحدة ،

في الماضي (ألعاب عصر DOS): الصحيح.
في هذه الأيام ، لم يعد صحيحًا. العديد من الألعاب الحديثة مترابطة وتستفيد من النوى المتعددة. بعض الألعاب سعيدة بالفعل بـ 4 مراكز ، ويبدو أن هذا العدد يرتفع بمرور الوقت.

في حين يتم تحديد التطبيقات مثل تحرير الفيديو من قبل عدد النوى.

نوع من صحيح.

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

من حيث ما هو متاح في السوق - يبدو أن جميع وحدات المعالجة المركزية لديها   تقريبا نفس السرعة مع الاختلافات الرئيسية كونها أكثر المواضيع أو   مزيد من النوى. فمثلا:

Intel Core i5 7600k، Base Freq 3.80 GHz، 4 Cores      Intel Core i7 7700k، Base Freq 4.20 GHz، 4 Cores، 8 Threads      AMD Ryzen 1600x، Base Freq 3.60 GHz، 6 Cores، 12 Threads      AMD Ryzen 1800x، Base Freq 3.60 GHz، 8 Cores، 16 Threads

إن مقارنة البنى المختلفة أمر خطير ، لكن حسنًا ...

فلماذا نرى هذا النمط من النوى المتزايدة مع كل النوى   سرعة الساعة نفسها؟

جزئيا لأننا واجهنا حاجزا. زيادة سرعة الساعة يعني المزيد من الطاقة اللازمة والمزيد من الحرارة المتولدة. المزيد من الحرارة يعني المزيد من الطاقة اللازمة. لقد حاولنا بهذه الطريقة ، وكانت النتيجة بنتيوم رهيبة 4. الساخنة والجياع السلطة. من الصعب أن تبرد. وليس أسرع حتى من Pentium-M الذي تم تصميمه بذكاء (A P4 بسرعة 3.0 غيغاهرتز كان بنفس سرعة P-mob بسرعة 1.7 جيجاهرتز).

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

مثلا قد تستمد وحدة رباعية النواة (4 جيجاهرتز) قدرًا كبيرًا من الطاقة وتولد قدرًا كبيرًا من الحرارة مثل ثلاثة نوى بقوة 2 غيغاهرتز. إذا كان بإمكان برنامجك استخدام نوى متعددة ، فسيكون أسرع.

لا تستطيع كل البرامج القيام بذلك ، ولكن البرامج الحديثة يمكنها ذلك.

الذي يجيب جزئيا لماذا لدينا رقائق مع نوى متعددة ، ولماذا نبيع رقائق مع أعداد مختلفة من النوى.

بالنسبة لسرعة الساعة ، أعتقد أنه يمكنني تحديد ثلاث نقاط:

  • وحدات المعالجة المركزية منخفضة الطاقة المنطقي لعدد غير قليل من الحالات التي ليست هناك حاجة إلى سرعة الخام. مثلا وحدات تحكم المجال ، وإعدادات NAS ، ... لهذه ، لدينا وحدات المعالجة المركزية تردد أقل. في بعض الأحيان ، حتى مع وجود المزيد من النوى (مثل وحدة المعالجة المركزية منخفضة السرعة بسرعة 8x ، يكون من المنطقي استخدام خادم الويب).
  • بالنسبة للباقي ، فإننا عادة ما نكون قريبين من الحد الأقصى للتردد الذي يمكننا القيام به دون أن يصبح تصميمنا الحالي شديد الحرارة. (قل 3 إلى 4GHz مع التصاميم الحالية).
  • وعلاوة على ذلك ، نحن نفعل binning. لا يتم إنشاء كل وحدة المعالجة المركزية بالتساوي. بعض نتائج وحدة المعالجة المركزية سيئة للغاية أو درجة سيئة في جزء من رقائقها ، وتعطيل هذه الأجزاء وتباع كمنتج مختلف.

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

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

ثم هناك الإنتاج والتسويق ، وهذا يفسد الأمر أكثر من ذلك.

لماذا ليس لدينا متغيرات بسرعات مختلفة على مدار الساعة؟ أي. 2 النوى "كبيرة"   والكثير من النوى الصغيرة.

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


14
2018-06-24 13:59



كما أشرت - "أنا أطرح هذا السؤال كنقطة عامة - وليس على وجه التحديد حول تلك cpus I المذكورة أعلاه" ، وكان هناك سبب أعطت مثالين من كل بنية. إذا تعاملنا مع اثنين من السيناريوهات مثل 1. جميع النوى الكبيرة ، و 2 اثنين كبيرة وصغيرة اثنين - ثم أعتقد جميع النقاط التي ذكرتها تنطبق على الحالتين - أي أقصى سرعة أساسية واحدة أساسية ، binning من الرقائق ، downclocking عندما لا تكون قيد الاستعمال. - Jamie
نواة السرعة القصوى الواحدة ليست مثيرة للاهتمام عندما لا يتم اختيارها على الرغم من ذلك. سوف تحتاج إلى تحديث جدولة لتفضيل في الواقع الأساسية عالية السرعة الأساسية. - Hennes


لماذا ليس لدينا متغيرات بسرعات مختلفة على مدار الساعة؟ على سبيل المثال ، اثنان من النوى "الكبيرة" والكثير من النوى الصغيرة.

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

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


10
2018-06-26 04:31



هذا ما كنت أفكر فيه. لماذا تستخدم عن قصد بعض المكونات السفلية عندما يمكن أن تكون جميع النخبة؟ +1. - MPW
MPW ليس الخيار بين إنشاء قلب كبير ثم الخصيعة ، فهو بين كل كبير مقابل عدد قليل من الكثير والكثير من النوى الصغيرة. نظرًا لأن لديك سيناريوهين متنافسين - أداء مؤشر ترابط واحد وأداء متعدد الخيوط - فلماذا لا تعززا كلاهما؟ هل نعلم أنه لا يمكنك تصنيع رقاقة مع عدد قليل من الكثير والكثير من النوى الصغيرة؟ - Jamie
Jamie يمكنك صنع شريحة مع عدد قليل من الكثير والكثير من النوى الصغيرة. لكن النوى الأصغر لن تعمل بسرعة منخفضة على مدار الساعة. - David Schwartz
كانوا لو صمموا بهذه الطريقة ... والسؤال هو لماذا لم يتم تصميم هذه الطريقة من الصفر ، وليس اتخاذ عملية تصنيع القائمة والتخصيب. - Jamie
Jamie لا أفهم ما تقوله. يجب أن تكون وحدة المعالجة المركزية بالكامل مع عملية التصنيع نفسها ، وأن السرعة القصوى للساعة هي إلى حد كبير خاصية لعمليات التصنيع. النوى التي تتطلب سرعة منخفضة على مدار الساعة على نفس مستوى التصنيع ستكون بشكل عام أكثر من معقدة وتأخذ مساحة أكبر ، وإلا لماذا تتطلب سرعة أقل على مدار الساعة؟ - David Schwartz


لماذا ليس لدينا متغيرات بسرعات مختلفة على مدار الساعة؟ على سبيل المثال ، اثنان من النوى "الكبيرة" والكثير من النوى الصغيرة.

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

أنا مندهش من العديد من الإجابات الأخرى. المعالجات الحديثة يمكن القيام بذلك. يمكنك اختبار ذلك من خلال ، على سبيل المثال ، فتح وحدة المعالجة المركزية (CPU-Z) على هاتف ذكي - يكون Google Pixel قادرًا تمامًا على تشغيل النوى المختلفة بسرعات مختلفة:

هو اسميا 2.15 غيغاهرتز ، ولكن اثنين من النوى في 1.593 غيغاهرتز واثنان في 1.132 غيغاهرتز.

في الواقع ، منذ عام 2009 ، كان لمعالج إنتل (CPUs) السائد منطقياً لتعزيز النوى الفردية بشكل أكبر أثناء رفع سرعة النوى الأخرى ، مما سمح بتحسين الأداء الأساسي الواحد مع البقاء ضمن ميزانية TDP: http://www.anandtech.com/show/2832/4

تتميز المعالجات الجديدة من إنتل بـ "فافوريد كور" (مصطلح تسويق إنتل) في كل مصنع في المصنع ، حيث تتمكن أسرع النوى من رفع مستوى أعلى: http://www.anandtech.com/show/11550/the-intel-skylakex-review-core-i9-7900x-i7-7820x-and-i7-7800x-tested/7

كانت شرائح بلدوزر من AMD تحتوي على نسخة بدائية من هذا: http://www.anandtech.com/show/4955/the-bulldozer-review-amd-fx8150-tested/4

رقائق Ryzen الجديدة من AMD المحتمل هذا أيضًا ، على الرغم من عدم ذكره صراحة هنا: http://www.anandtech.com/show/11170/the-amd-zen-and-ryzen-7-review-a-deep-dive-on-1800x-1700x-and-1700/11


9
2018-06-25 02:42



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


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

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

ولكي نصل إلى عالم الحوسبة غير المتجانسة ، فإنه من الشائع أيضًا أن نرى النوى "CPU" و "GPU" المدمجة في الشريحة نفسها. هذه لديها تصاميم مختلفة تماما ، تشغيل مجموعات تعليمات مختلفة ، يتم تناولها بشكل مختلف ، وبشكل عام سوف يتم تسجيلها بشكل مختلف أيضًا.


8
2018-06-26 04:14





الأداء السريع لمرة واحدة ومعدل إنتاج متعدد الصفحات مرتفع للغاية هو بالضبط ما تحصل عليه باستخدام وحدة المعالجة المركزية إنتل زيون E5-2699v4.

انها برودويل 22 النواة. سرعة الساعة المستمرة هي 2.2 غيغاهرتز مع جميع النوى النشطة (على سبيل المثال ترميز الفيديو) ، ولكن أحادية النواة القصوى توربو هو 3.6GHz.

لذلك أثناء تشغيل مهمة موازية ، فإنه يستخدم ميزانيته 145W الطاقة كما 22 6.6W النوى. ولكن أثناء تشغيل مهمة باستخدام عدد قليل من مؤشرات الترابط ، فإن نفس ميزانية الطاقة تسمح لبعض توربو النوى إلى 3.6 جيجاهيرتز. (ال انخفاض الذاكرة أحادية النواة وعرض النطاق الترددي L3-cache في Xeon كبير يعني أنه قد لا يعمل بالسرعة مثل سطح المكتب رباعي النواة بسرعة 3.6 جيجاهرتز ، مع ذلك. يمكن لوحدة أساسية واحدة في سطح المكتب Intel CPU استخدام الكثير من عرض النطاق الترددي الإجمالي للذاكرة.)

سرعة الساعة 2.2 غيغاهيرتز هي تلك النسبة المنخفضة بسبب الحدود الحرارية. كلما ازداد عدد مراكز التحكم في وحدة المعالجة المركزية ، كان أبطأ تشغيلها عندما تكون جميعها نشطة. هذا التأثير ليس كبيرا جدا في 4 و 8 وحدات المعالجة المركزية الأساسية التي ذكرتها في السؤال ، لأن 8 ليست تلك النوى كثيرة ، ولديهم ميزانيات طاقة عالية جدا. حتى وحدات المعالجة المركزية سطح المكتب المتحمس تظهر هذا التأثير بشكل ملحوظ: Intel's Skylake-X i9-7900X هو جزء 10c20t مع قاعدة 3.3 غيغاهرتز ، بحد أقصى 4.5 جيجاهرتز التوربينية.  هذا هو أكثر من ذلك بكثير الرأس التوربو أحادية النواة من i7-6700k (4.0 جيجاهرتز مستدامة / 4.2 غيغاهرتز توربو دون رفع تردد التشغيل).

يسمح مقياس التردد / الجهد (DVFS) بتشغيل نفس النواة عبر نطاق عريض من منحنى الأداء / الكفاءة.  أنظر أيضا هذا العرض التقديمي IDF2015 على إدارة الطاقة Skylake، مع الكثير من التفاصيل المثيرة للاهتمام حول ما يمكن لوحدات المعالجة المركزية القيام به بكفاءة ، وتداول الأداء مقابل الكفاءة على حد سواء بشكل ثابت في وقت التصميم ، وعلى الطاير مع DVFS.

في الطرف الآخر من الطيف ، تحتوي معالجات Intel Core-M على تردد ثابت منخفض جدًا ، مثل 1.2 جيجا هرتز عند 4.5 واط، ولكن يمكن توربو تصل إلى 2.9GHz. مع النوى المتعددة النواة ، فإنها سوف تدير النوى في سرعة أكثر كفاءة على مدار الساعة ، تماما مثل Xeons العملاقة.

أنت لا تحتاج إلى بنية نمط كبير. LITTLE غير متجانسة للحصول على معظم الفوائد. إن النوى الصغيرة في ARM big.LITTLE هي عبارة عن نوى في النظام غير ملائمة للعمل الحاسوبي. النقطة هي فقط لتشغيل واجهة المستخدم مع طاقة منخفضة للغاية. قد لا يكون الكثير منها مناسبًا لترميز الفيديو أو غيره من عمليات الطرح الخطيرة. (لقد وجد @ Lưu Vĩnh Phúc بعض المناقشات حول سبب عدم احتواء x86 على big.LITTLE. بشكل أساسي ، فإن إنفاق المزيد من السليكون على قلب بطيء جدًا منخفض الطاقة لن يكون ذا قيمة بالنسبة للاستخدام العادي للكمبيوتر المكتبي / المحمول.)


في حين يتم تحديد التطبيقات مثل تحرير الفيديو من قبل عدد النوى. [ألن يكون 2 × 4.0 غيغاهرتز + 4x 2.0 غيغاهرتز سيكون أفضل في أحمال العمل متعددة الخيوط من 4x 4GHz؟]

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

cores * perf_per_core * (scaling efficiency)^cores

(perf_per_core ليس نفس سرعة الساعة ، لأن Pentium4 3GHz سيحصل على عمل أقل بكثير في دورة الساعة من Skylake 3GHz).

الأهم من ذلك ، من النادر جدا أن تكون الكفاءة 1.0. بعض موازية بشكل محرج يتم قياس المهام تقريبًا تقريبًا (على سبيل المثال ، تجميع ملفات مصدر متعددة). لكن ترميز الفيديو هو ليس مثل هذا.  بالنسبة إلى x264 ، فإن القياس جيد جدًا إلى عدد قليل من النوى ، ولكنه يزداد سوءًا مع المزيد من النوى. مثلا من 1 إلى 2 قلب سوف تضاعف السرعة تقريبًا ، ولكن الانتقال من 32 إلى 64 مركزًا سيساعد كثيرًا أقل بكثير على التشفير النموذجي 1080p. النقطة التي تعتمد عليها سرعة الهضاب على الإعدادات. (-preset veryslow يفعل المزيد من التحليل على كل إطار ، ويمكن أن تبقي أكثر من مشغول النوى -preset fast).

مع الكثير من النوى البطيئة جدًا ، ستصبح الأجزاء ذات الخيوط المفردة من x264 اختناقات. (على سبيل المثال ، التشفير النهائي لمجرى البايت CABAC. إنه يعادل h.264 من gzip ، ولا يتوازى.) إن وجود عدد قليل من النوى السريعة سيحل ذلك ، إذا كان نظام التشغيل يعرف كيفية جدولة ذلك (أو إذا كان x264 يعلق المواضيع المناسبة على النوى السريعة).

يمكن أن تستفيد x265 من عدد من النوى أكثر من x264 ، حيث أن لديها المزيد من التحليل للقيام به ، وتصميم HPPP في h.265 يسمح أكثر تشفير ويفك التوازي. ولكن حتى بالنسبة لـ 1080p ، فإنك تخرج من التوازي للاستغلال في مرحلة ما.


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


7
2018-06-28 20:03





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

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


4
2018-06-24 23:57





أجهزة الكمبيوتر المكتبية تفعل هذا بالفعل.

لديهم (مجموعة من) CPU (s) ، مع مؤشرات الترابط 1-72 نشط في وقت واحد ، و (مجموعة) GPU (s) ، مع وحدات الكمبيوتر 16-7168.

الرسومات هي مثال للمهمة التي وجدناها عمل موازي واسع لتكون فعالة. تم تحسين GPU للقيام بهذا النوع من العمليات التي نريد القيام بها الرسومات (ولكنها لا تقتصر على ذلك).

هذا هو جهاز كمبيوتر مع عدد قليل من النوى الكبيرة ، و الكثير من النوى الصغيرة.

بشكل عام ، فإن تداول جوهر واحد في X FLOPS لثلاثة نوى في X / 2 FLOPS لا يستحق ذلك ؛ ولكن تداول جوهر واحد في X FLOPS لمائة النوى في X / 5 FLOPS يستحق كل هذا العناء.

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

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

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


4
2018-06-27 15:45