ما هو معنى "غير الزمانية" يصل الذاكرة في x86

StackOverflow https://stackoverflow.com/questions/37070

  •  09-06-2019
  •  | 
  •  

سؤال

هذا هو إلى حد ما على مستوى منخفض السؤال.في x86 الجمعية هناك نوعان من تعليمات SSE:

MOVDQA xmmi, m128

و

MOVNTDQA xmmi, m128

IA-32 مطور برامج دليل يقول أن NT في MOVNTDQA تقف على غير الصدغي, و هذا خلاف انها نفس MOVDQA.

سؤالي هو ماذا غير الصدغي يعني هذا ؟

هل كانت مفيدة؟

المحلول

غير الزمانية تعليمات SSE (MOVNTI, MOVNTQ ، الخ) ، لا تتبع العادي ذاكرة التخزين المؤقت-اتساق القواعد.ولذلك غير الزمانية المخازن يجب أن يكون متبوعا SFENCE التعليمات من أجل نتائجها أن ينظر إليها من قبل المعالجات الأخرى في الوقت المناسب.

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

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

المصدر: http://lwn.net/Articles/255364/

نصائح أخرى

اسبو حد الانفجار على الهدف.فقط أريد أن أضيف بلدي اثنين سنتا:

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

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

وفقا Intel® 64 و IA-32 أبنية مطور برامج دليل, المجلد 1:البنية الاساسية ، "البرمجة مع إنتل ملحقات SIMD دفق (Intel SSE)" الفصل:

التخزين المؤقت الزمني مقابلغير الزمانية البيانات

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

الوصف من غير الزمانية تحميل و تخزين التعليمات.المصدر:إنتل 64 و IA-32 أبنية مطور برامج دليل, Volume 2:مجموعة التعليمات المرجعية

تحميل (MOVNTDQA—تحميل مزدوجة Quadword غير الزمانية الانحياز تلميح)

الأحمال مزدوجة quadword من المصدر المعامل (الثانية المعامل) إلى الوجهة المعامل (معامل الأولى) باستخدام غير الزمانية تلميح إذا كانت الذاكرة المصدر WC (دمج الكتابة) نوع الذاكرة [...]

[...] المعالج لا يقرأ البيانات في ذاكرة التخزين المؤقت الهرمي, ولا جلب المقابلة ذاكرة التخزين المؤقت الخط من ذاكرة إلى ذاكرة التخزين المؤقت الهرمي.

علما بأن بيتر كوردس التعليقات انها ليست مفيدة على العادي WB (للكتابة) الذاكرة على المعالجات الحالية لأن NT تلميح هو تجاهل (ربما لأنه لا توجد NT-علم الأب prefetchers) الكامل بقوة أمرت تحميل دلالات التقديم. prefetchnta يمكن أن تستخدم الحد من التلوث تحميل من البنك الدولي الذاكرة

متجر (MOVNTDQ متجر معبأة الأعداد الصحيحة باستخدام غير الزمانية تلميح)

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

[...] المعالج لا كتابة البيانات إلى ذاكرة التخزين المؤقت الهرمي, ولا جلب المقابلة ذاكرة التخزين المؤقت الخط من ذاكرة إلى ذاكرة التخزين المؤقت الهرمي.

باستخدام مصطلحات محددة في ذاكرة التخزين المؤقت كتابة السياسات والأداء, ، يمكن اعتبار الكتابة حول (لا-كتابة-تخصيص لا جلب في الكتابة-ملكة جمال).

وأخيرا ، قد يكون من المثير للاهتمام أن استعراض جون ماكالبين الملاحظات حول عدم الزمنية مخازن.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top