سؤال وحدة المعالجة المركزية النوى: كلما كان ذلك أفضل؟


لدي حاليا معالج ثنائي النواة في العمل ورباعي النواة في المنزل. لقد لاحظت أن كلا الحواسيب متساوية إلى حد ما في إطلاق التطبيقات / تصفح الويب.

الفرق الذي يمكنني رؤيته هو أن ثنائي النواة هو 2.8 غيغاهرتز وأن بلدي الرباعي هو 2.4 جيجا هرتز.

هل من الأفضل أن يكون لديك ثنائي النواة بسرعة على مدار الساعة أو رباعية النوى بسرعة متوسطة؟


68


الأصل


"سريع" و "دون المتوسط" نسبي. في حالتك ، سيكون قلب رباعي أفضل لأن الفرق في سرعات الساعة لا يتجاوز 400 ميغاهيرتز. ومع ذلك ، فإن النواة ثنائية النواة بسرعة 3 غيغاهرتز هي أفضل من رباعية النوى 1.5 جيجاهرتز ، بالنسبة للجزء الأكبر. - Sasha Chedygov
لا تستخدم GHz لمقارنة المعالجات ، استخدم بعض نتائج اختبار السرعة / الحمل لمقارنة السرعة الفعالة للمعالج. معالج ثنائي النواة بسرعة 3 جيجاهرتز ربما يكون أبطأ من 2.4 جيجاهرتز i7 (i7 ليس لديه ناقل أمامي ، ...) ... - Ben
يجب أن يكونBen واضحا أنه سيكون نفس بنية المعالج (مثل 45nm Core 2 Duo vs Quad). - Mircea Chirea


الأجوبة:


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


مشكلتك الأساسية هي برنامج غير مكتوب من أجل multi-core.

انظر إلى مقالة جيف آتوود الممتازة اختيار ثنائي النواة أو رباعية النواة.

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

يتم الرد عليك هنا (تم تسليط الضوء على مقالة جيف) ،

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


قضية الجانب الامامي للحافلة (هذا المصطلح دائما مسليا لي).
مع الأشياء Nehalem تغيير... كما قال ArsTechnica العام الماضي.

أعطى قانون مور مهندسي المعالجات إحراجا لثروات الترانزستور ، ولا يوجد أي مكان أكثر وضوحا من معالج إنتل 45 نانومتر في نيهالم. بداية من 4 إلى 8 أشكال أساسية في وقت لاحق من هذا العام ، تقوم شركة Nehalem بتعبئة كمية كبيرة من الأجهزة في مقبس معالج واحد. (الأرقام المبكرة تضع عدد الترانزستور في نيهالم رباعية النوى عند 781 مليونًا ؛ ولم تظهر بعد أي أرقام للنموذج 8-core). ولكن محاولة إطعام كل هذا الجهاز مع بنية حافلة frontside الموجودة في منصة إنتل ستكون حماقة. لذا ، وعلى نفس القدر من الأهمية ، فإن نيهالم تبدو أيضاً نذرة الموت التي طال انتظارها في هندسة الحافلات الأمامية الممتازة التي يقودها إنتل.

التغيير الجذري في وضع النطاق الترددي للنظام إنتل أن الجديد في إنتل QuickPath Interconnect (QPI) يمثل ربما أكبر عامل واحد الذي شكل تصميم Nehalem. بين QuickPath و Nehlem تحكم مدمج في الذاكرة ، فإن معالج Nehalem سيحصل على الوصول إلى كمية غير مسبوقة من عرض النطاق الترددي الكلي ، خاصة في التطبيقات ذات المقابس الثنائية والأربعة.

نقل AMD وحدة تحكم الذاكرة في المعالج في وقت سابق واستخدمت Hypertransport.


53



المسألة الأخرى التي يجب مراعاتها هي أداء الحافلة الأمامية. بوجود الكثير من النوى ، وذاكرة كبيرة ، ومثل هذه البرامج الضخمة ، يصبح الوصول إلى الذاكرة أمرا حاسما! إذا تعذّر على وحدة المعالجة المركزية الوصول إلى الذاكرة الرئيسية ، فإنها ستؤذي الأداء. وكلما تعددت المهام ، كلما زاد احتمال حدوث ذلك ، بغض النظر عن مدى كبر حجم ذاكرة التخزين المؤقت للرقاقة. - geoffc
في 8 سنوات منذ تم فتح هذا السؤال في عام 2009 ، تغيرت الأمور. البرامج الآن أفضل بكثير في الاستفادة من العديد من النوى ، وهذا الاتجاه سيستمر فقط. - Contango
توافقContango ، يجب تحديث هذه الإجابة لتعكس الاتجاهات الحالية. - Joe


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

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

هناك أيضا فرق بين إنتل كور 2s و أيه إم دي Phenoms في هذا الصدد. يستخدم AMD Hypertransport ، والتي هو بروتوكول نقطة إلى نقطة بحيث خصص كل الأساسية عرض النطاق. انتل كور 2s (ولكن ليس كور i7s وغيرها تستخدم وحدات المعالجة المركزية (CPUs) Niehalem) ناقل الجانب الأمامي ، والتي يتم مشاركتها عرض النطاق الترددي حتى يكون لديك المزيد من النوى المنافسة لنفسه عرض النطاق.

هذا يمكن أن يجعل نفس الساعة رباعية النواة (هامشيا) أبطأ في بعض الظروف. قيمة المال لا يزال مع النوى المزدوجة IMHO. أن يقال ، لدي رباعية النواة.


18



يستخدم Nehalem QPI (QuickPathInterconnect) الموجود في نفس الحديقة كـ Hypertransport. - nik


أنا أحب كيف يلخص دونالد كنوت الأمر:

بالنسبة لي ، يبدو الأمر كما لو أن مصممي الأجهزة قد نفدوا من الأفكار ، وأنهم يحاولون إلقاء اللوم على زوال قانون مور في المستقبل على كتّاب البرامج عن طريق إعطائنا آلات تعمل بشكل أسرع على عدد قليل فقط المعايير الرئيسية! لن أكون مندهشًا على الإطلاق إذا اتضح أن فكرة multithreading بالكامل هي تقليب ، أسوأ من أسلوب "Itanium" الذي كان من المفترض أن يكون رائعًا إلى حد كبير - إلى أن اتضح أن المتجمعين الذين تم طلبهم كانوا مستحيلين في الأساس .

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

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


10



بشكل عام أوافق على أن النوى المتعددة لن تساعد TeX نفسها. ولكنه سيكون بمثابة فوز كبير لمحرر TeX الرسومية ، الذي يكرر TeX لتحديث العرض أثناء تحرير الوثيقة. - KeithB
هذا هو واحد من تلك الأماكن التي يذهب فيها قلبي إلى Knuth ، لكن رأيي لا يتفق تمامًا. - nik


بالنسبة لسطح المكتب الرئيسي لدي ، استخدم جهاز Xeon ثنائي النواة مع 8 غيغابايت من ذاكرة الوصول العشوائي.

عندما أقوم بالبرمجة ، ولدي Internet Explorer ، أو Chrome ، أو TweetDeck ، أو Visual Studio 2008 (أو 2010) ، ومثيل Sql Server Express المحلي ... كل شيء على طول ما يرام.

وبالمقارنة ، كان لدي نواة مزدوجة من قبل ، وستبدأ الأشياء في الزحف باستخدام Visual Studio و Chrome و Sql Express.

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


5





بالنسبة إلى الاستخدام اليومي والبرامج غير المتعدّدة النواة ، فإنّ النواة المزدوجة السريعة ستهزم أبطأ رباعي النواة.

مع مرور الوقت والتطبيقات متعددة مؤشرات الترابط بشكل صحيح تصبح القواعد الأساسية ستجذب إلى الأمام.

من وجهة نظر بانج لمنظورك باك ، لا تزال النوى المزدوجة لديها قيادة مريحة.


1





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


1





لاحظ أن أحدث معالجات i7 يمكن أن تزيد في الواقع سرعة الساعة على النوى النشطة عندما لا تكون كلها مطلوبة ؛ على سبيل المثال ، إذا كان لديك نظام رباعي النواة بسرعة 2.4 غيغاهرتز ، ولكن البرنامج يحتاج فقط إلى 2 مركز لتشغيل ، فإنه قد يصل تلقائيًا إلى 2.8 جيجاهرتز (ليس رقمًا فعليًا ، فقط مثال).

وأحدث جيل من i7 أعتقد أنه يمكن أن يصل إلى 3 أو 4 حاويات إذا كانت هناك حاجة إلى واحد أو اثنين من النوى. على هذا النحو ، قد لا ينتهي الأمر ببقاء الكثير من المقايضات كما هو حاليًا ...


1





بالنسبة الى Anandtech.com:

كل ذلك يتلخص في TDP لل   أو نقطة تصميمها الحرارية. ال   أكثر TDP مقيدة منصة ،   كلما استفدت أكثر من ذلك   وضع Turbo من Intel. دعني أضعها   طريق اخر؛ لتناسب أربعة   النوى إلى 130DP TDP ، كل الأساسية لديها   لتشغيل بسرعة منخفضة على مدار الساعة مما لو   كان لدينا فقط جوهر واحد في هذا TDP نفسه.

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

هذا كله في سياق الحاجة إلى الاختيار بين النوى (أو الخيوط) والتردد الأساسي.


1



هل هذا سيكون أكثر ملاءمة لاهتمام رفع تردد التشغيل؟ مادة جيدة على أي حال. - nik


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

هذا كله نسبي ، على الرغم من أن تشغيل رباعي النواة عند 100 ميجاهرتز لن يؤدي إلى أداء ثنائي النواة 4 غيغاهرتز. بشكل عام ، على الرغم من ذلك ، كلما كانت النوى أكثر كان ذلك أفضل.


0



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


يعتمد ما تقوم به وإمكانيات نظام التشغيل والتطبيقات الخاصة بك.

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

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


0