أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

قد يكون قيم توقيت ملقم SQL غير صحيح عند استخدام الأدوات المساعدة أو تقنيات تغيير ترددات CPU

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

اضغط هنا لرابط المقالة باللغة الانجليزية931279
الموجز
يستخدم Microsoft SQL Server 2005 العداد CPU ذات الدقة العالية لتوفير قدرات توقيت microsecond. هو microsecond millionth واحد من الثانية (أو آلاف واحد من ميلي ثانية واحدة). ومع ذلك، قد تكون قيم توقيت SQL Server غير صحيحة إذا كنت تستخدم تقنيات تغيير ترددات CPU. على سبيل المثال، قد تحدث هذه المشكلة عند استخدام أي من التقنيات التالية:
  • CPU والتنقل
  • Cool'n AMD ' Quiet تقنية
  • أنظمة الطاقة المختلفة
تحتوي هذه المقالة على معلومات إضافية لمساعدتك على إيجاد حل بديل لهذه المشكلة وأساليب.
الأعراض
قد يتم الحصول على قيم غير صحيحة عند استخدام عبارة SET إحصائيات TIME لعرض الملقم تنفيذ تحليل والأوقات التحويل البرمجي. على سبيل المثال، قد تلاحظ أن الوقت المنقضي من وقت تنفيذ SQL Server أكثر بكثير من الوقت CPU. قد تؤثر هذه المشكلة على دقة توليف الأداء. تحدث هذه المشكلة عند استخدام أحد التقنيات المسردة في قسم "الملخص" على الملقم.
السبب
تحدث هذه المشكلة بسبب تغيير ترددات CPU عند استخدام هذه التقنيات. يستخدم SQL Server 2005 العداد CPU ذات الدقة العالية لتوفير قدرات توقيت microsecond. إذا تم تغيير ترددات CPU توفير الطاقة وتقليل الإخراج حراري ، قد تكون المدد محسوب غير صحيحة.
الحل

معلومات حزمة الخدمة

لحل هذه المشكلة، يجب الحصول على أحدث حزمة خدمة لـ SQL Server 2005. لمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف لـ Microsoft:
913089كيفية الحصول على أحدث حزمة خدمة لـ SQL Server 2005
ملاحظة في SQL Server 2005 المزود بحزمة الخدمة Service Pack 3 وفي حزم الخدمة الأحدث لا يُستخدم الطابع الزمني المعالج. استخدم هذه الإصدارات من SQL Server 2005 على جهاز ضبط وقت وأكثر كفاءة في الأداء له بدقة أقصى ميلي ثانية واحدة.
تصريح
تم تصحيح هذه المشكلة لأول مرة في SQL Server 2005 المزود بحزمة الخدمة Service Pack 3.
الحل البديل
يتطلب SQL Server 2005 نقاط البيانات المعروفة و والاستقرار لتنفيذ توليف الأداء دقيقة. إذا تم تمكين التعديلات تردد CPU الحيوية على الكمبيوتر, يمكنك تعطيلها حتى معدل تكرار مؤشر الاحتفاظ وحدات المعالجة المركزية (CPUs) الموجودة قبل بدء تشغيل مراقبة ثم توليف أداء ملقم SQL. للقيام بذلك، استخدم الطرق التالية.

تكوين نظام الطاقة على جهاز الكمبيوتر لفرض وحدات المعالجة المركزية (CPUs) الموجودة تبقى عند تردد الحد الأقصى

للقيام بذلك، اتبع الخطوات التالية:
  1. انقر فوق ابدأ ثم انقر فوق تشغيل واكتب Powercfg.cpl ثم انقر فوق موافق.
  2. في مربع الحوار "خصائص خيارات الطاقة" ، انقر فوق دومًا تشغيل في القائمة أنظمة الطاقة.
  3. انقر فوق موافق.
قد يحدث drift. هو drift divergence بين القيم تردد CPU. لمزيد من المعلومات، راجع قسم "الدفق". في هذه الحالة، يجب عليك إعادة تشغيل Microsoft Windows إعادة مزامنة ترددات كافة وحدات المعالجة المركزية (CPU) بعد تغيير نظام الطاقة.

إذا لم تتمكن من إعادة تشغيل الكمبيوتر تمكين بترابط المعالج SQL Server لمنع مؤشرات ترابط worker SQL Server من بين وحدات المعالجة المركزية (CPU). عند القيام بذلك، ليس لديك إلى إعادة تشغيل الكمبيوتر حتى في حالة حدوث divergence بين القيم تردد CPU. لتمكين SQL Server بترابط المعالج عن وحدات المعالجة المركزية (CPU) كافة على الملقم يجب عليك استخدام قناع مختلفة بالاعتماد على عدد المعالجات المنطقية الموجودة على الملقم.

يسرد الجدول التالي وأمثلة السيناريوهات.
رقم CPUعبارات لتمكين بترابط المعالج
وحدات المعالجة المركزية (CPU) 02sp_configure exec 'قناع التقارب' ، 0x00000003
الانتقال
إعادة تكوين
الانتقال
04 وحدات المعالجة المركزية (CPU)sp_configure exec 'قناع التقارب' ، 0x0000000F
الانتقال
إعادة تكوين
الانتقال
08 وحدات المعالجة المركزية (CPU)sp_configure exec 'قناع التقارب' ، 0x000000FF
الانتقال
إعادة تكوين
الانتقال
16 وحدات المعالجة المركزية (CPU)sp_configure exec 'قناع التقارب' ، 0x0000FFFF
الانتقال
إعادة تكوين
الانتقال
32 وحدات المعالجة المركزية (CPU)sp_configure exec 'قناع التقارب' ، 0xFFFFFFFF
الانتقال
إعادة تكوين
الانتقال
ملاحظة قد يكون غير كافية لتعطيل ميزات التباين تردد CPU مستوى BIOS. أدوات مساعدة لجهة خارجية متعددة يمكن أن يؤدي إلى تبديل ترددات CPU. تمكين بعض التطبيقات التعديلات تردد حتى عندما تكون وحدات المعالجة المركزية (CPUs) الموجودة ضمن إعدادات نظام الطاقة الحد الأقصى. في هذه الحالة، عليك تعطيل هذه الأدوات المساعدة لجهة خارجية عند القيام الأداء التوليف في SQL Server 2005.

استخدام الأدوات المساعدة لجهة أخرى وبرامج لمزامنة ترددات CPU والعدادات ساعة CPU

في حالات نادرة قد يتطلب نظام تحديث من الشركة المصنعة لتصحيح مشاكل تردد CPU. يعد إجراءاً أفضل للتحقق من نظام آخر التحديثات BIOS الرمز الصغير والبرامج الثابتة إذا كنت تشك في النظام قد يكون لديك مشكلة.
معلومات أخرى
Microsoft SQL Server 2000 والإصدارات السابقة من SQL Server استخدام آليات توقيت Windows. استخدام آليات توقيت قيم ميلي ثانية واحدة للدقة. بشكل عام، هذه الدقة ms. 10 إلى 15 ولكن, قد تكون الدقة كبيرة بقدر 55 مللي ثانية. استعلامات SQL Server بشكل متكرر لإتمام داخل ميلي ثانية واحدة ذات الأرقام المفردة أو يمتد microsecond الوقت. يتطلب هذا الدقة جهاز ضبط وقت عالي الدقة. لذلك، هذه الإصدارات من تقرير SQL Server مدة بعض الاستعلامات كـ 0 ms. لذلك يكون من الصعب لمراقبة أداء ثم توليف الأداء SQL Server في الإصدارات السابقة من SQL Server.

تحسين SQL Server 2005 دقة باستخدام العداد CPU ذات الدقة العالية لتوفير قدرات توقيت microsecond. عند استخدام تقنيات المسردة في قسم "الملخص" قد تكون قيم توقيت الإبلاغ غير صحيحة.

قد تؤثر هذه المشكلة على الكائنات والميزات التالية:
  • تتبع الأحداث:
    • الحدث لفت
    • الأحداث في عقدة "إجراءات مخزنة"
    • الأحداث في عقدة TSQL
    • الأحداث في العقدة كائنات
    • الأحداث في عقدة المعاملات
  • إدارة حيوي طرق العرض:
    • sys.dm_exec_query_stats
    • sys.dm_exec_requests
    • sys.dm_exec_sessions
    • sys.dm_io_pending_io_requests
    • sys.dm_os_ring_buffers
    • sys.dm_os_sys_info
    • sys.dm_io_virtual_file_stats
    • sys.dm_os_wait_stats
  • عبارة SET إحصائيات TIME
  • جدول النظام sysprocesses
بعد تثبيت SQL Server 2005 المزود بحزمة الخدمة SP2 (SP2) سجلات SQL Server رسالة خطأ في سجل أخطاء عند اكتشاف ملقم SQL تكون متزامنة بين وحدات المعالجة المركزية (CPUs) الموجودة أجهزة ضبط الوقت عالية الدقة. تشير رسالة الخطأ إلى قد لا تكون توقيت الأداء دقيقة و المستخدمين يجب أن تستخدم بيانات الأداء بحذر.

نص رسالة خطأ تشبه إحدى رسائل الخطأ التالية:
رسالة الخطأ 1
لم يتم مزامنة العداد طابع الوقت CPU على معرّف مجدول 2 مع وحدات المعالجة المركزية (CPU) أخرى.
رسالة الخطأ 2
تم تغيير تردد طابع الوقت CPU 191469 إلى 1794177 علامات التجزئة لكل ميلي ثانية واحدة. سيتم استخدام التردد الجديد
يستخدم SQL Server تعليمة عداد طابع الوقت الحقيقي (RDTSC) الحصول على حساب التجزئة CPU 64-بت. يمكنك تقسيم هذه القيمة بواسطة تردد CPU لتحويل القيمة إلى قيم ميلي ثانية واحدة. يمكن أن تحدث التباينات توقيت عند حدوث تغييرات تردد CPU أو drift.

CPU والتنقل

CPU والتنقل يتم تعريف كتغيير deliberate في تكرار CPU. CPU والتنقل قد تكون ويُعرف أيضاً تقنية SpeedStep Intel أو AMD PowerNow! تقنية. عند CPU والتنقل حدوث ذلك، قد سرعة وحدة المعالجة المركزية لزيادة أو إنقاص بزيادات صغيرة بقدر 50 ميغا هرتز توفير الطاقة وتقليل الإخراج حراري. لا ضبط وحدات المعالجة المركزية (CPUs) الموجودة ضمن نفس العقدة الوصول (NUMA) ذاكرة غير uniform ترددات بشكل مستقل.

يوضح الجدول التالي كيف يمكن أن تؤثر التغييرات المتدرج CPU على العمليات الحسابية التوقيت.
الإجراءعلامات التجزئة RDTSCعلامات التجزئة لكل ميلي ثانية واحدة (تكرار)وقت ساعة الجدار
بدء تشغيل الدفعية12000
الخطوة تردد لأسفل2001001ms
نهاية الدفعية5003ms
الإجماليات5004ms
يلتقط SQL Server علامات التجزئة RDTSC في علامات التجزئة RDTSC البدء والانتهاء. ثم, SQL Server قسمة علامات التجزئة على قيمة التكرار.

في هذا المثال، حدوث العمليات الحسابية توقيت التالية عند استخدام قيمة تكرار من 200 أو 100:
  • تردد 200: 500/200 = 2.5 مللي ثانية
  • تردد 100: 500/100 = 5 مللي ثانية
يطابق أي من العمليات الحسابية توقيت وقت ساعة الجدار الفعلي من 4 ميلي.

إذا تم استخدام هذا الحساب في RPC: اكتمل يتم الإعلام عنها التتبع أعمدة بيانات الحدث و المدة و وقت الانتهاء بشكل غير صحيح. RPC: اكتمل الحدث تلتقط وقت ساعة الجدار البداية وتقوم CPU التجزئة عدد. يتم حساب التتبع للحصول على توقيت دقة أعلى من توفر Windows في SQL Server 2005 و المدة و وقت الانتهاء من أعمدة البيانات في SQL Server باستخدام حساب التجزئة CPU المنقضية. يتم حساب العمود وقت الانتهاء عن طريق إضافة العمود المدة إلى العمود وقت البدء. في هذا المثال، يتم حساب العمود وقت الانتهاء عن طريق إضافة 2.5 مللي ثانية أو 5 ثانية إلى وقت البدء بشكل غير صحيح.

drift

هو drift divergence في القيم ساعة CPU. يمكن على الأنظمة التي تحتوي على وحدات المعالجة المركزية (CPU) متعددة إنتاج قيم مختلفة ساعة CPU نفس نقطة في الوقت. على الرغم من أنه لم يكن الشائعة قد تواجه وحدات المعالجة المركزية (CPU) فصل ساعة عبر الوقت.

يوضح المثال التالي كيف تؤثر التغييرات drift ناتج عمود البيانات المدة في تتبع SQL Server. يفترض المثال يبقى ثابت في 200 علامات التجزئة لكل ميلي ثانية واحدة تردد CPU. يوضح الجدول التالي الأحداث الموجودة في هذا السيناريو.
الإجراءCPU المجدولة لـ WindowsRDTSC CPU 1RDTSC CPU 2وقت ساعة الجدار
بدء تشغيل الدفعية110011000
نهاية الدفعية290019004 ميلي
الإجماليات4 ميلي
يلتقط SQL Server علامات التجزئة RDTSC في نقاط البدء ونقاط النهاية. ثم, SQL Server قسمة علامات التجزئة RDTSC قيمة التكرار. في هذا المثال، جدولة Windows مؤشر ترابط عامل SQL Server على تحديد وحدات المعالجة المركزية (CPUs جهازي مختلفة). تم تشغيل مؤشر ترابط عامل SQL Server خدمات الدُفعة أولاً على CPU الأول (CPU 1).

ومع ذلك، تمت مقاطعة تنفيذ الدفعي في نقطة و SQL Server إرسال تنفيذ الدفعي إلى قائمة انتظار معلقة. عند إرسال SQL Server مؤشر ترابط عامل SQL Server خدمات هذه الدفعة إلى قائمة انتظار runnable مرة أخرى أو إرسال Windows مؤشر ترابط للتشغيل على "وحدة المعالجة المركزية" الثانية (CPU 2). إكمال مؤشر ترابط عامل SQL Server قيد التشغيل على 2 CPU. وبسبب drift CPU تم قيمة التجزئة النهاية التي تم التقاطها من 2 CPU 1900 بدلاً من 900. يمكنك تجنب هذا السلوك إذا قمت بتمكين بترابط المعالج SQL Server.

يتم استخدام العمليات الحسابية توقيت التالية في هذا المثال:
  • ولكن غير الصحيح الذي تم الإعلام عنه قيمة: (1900 100 = 1800) / 200 = 9 ms
  • تصحيح قيمة: (900 100 = 800) / 200 = 4 ميلي
قيمة العمود المدةRPC: اكتمل يتم الإبلاغ عن على الحدث 9 مللي ثانية بدلاً من 4 ms. هذه النتيجة القيمة الصحيحة 4 ميلي نقراً مزدوجاً أكثر من.

يتم إضافة رسائل التحذير drift إلى SQL Server 2005 للإشارة قد لا يمكن الاعتماد عليه إخراجات الأداء الذي يتم ذكره مسبقًا. في بعض الحالات إظهار قد تقرير SQL Server 2005 المزود بحزمة الخدمة SP2 رسائل تحذير حول ما يلي:
  • رسائل تحذير drift خاطئة
  • يمكن أن تصبح drift tens بالمللي ثانية دون إحداث تأثير نظام يمكن ملاحظته
يجب أن تكون حذراً عند تقييم إخراجات تتعلق بالأداء و مقارنة إخراجات تتعلق بالأداء إلى توقيت ساعة الجدار. إذا كان هناك لم مؤشرات أخرى مشاكل الأداء يمكنك عموماً تجاهل رسائل التحذير drift. على سبيل المثال، يمكنك عموماً تجاهل رسائل تحذير drift في الحالات التالية:
  • تشغيل عمليات كما هو متوقع.
  • استعلامات SQL Server ليست قيد التشغيل في النقوش durational غريبة.
  • لم تكن تشاهد علامات أخرى اختناقات.
ومع ذلك، قبل تجاهل drift تحذير الرسائل، نوصي بالاتصال بالشركة المصنعة للتأكد من أنه لا يوجد المعروفة RDTSC مشكلات موجودة.

يمكنك استخدام إشارة تتبع 8033 (–T8033) للعودة إلى السلوك التقارير في نسخة الإصدار الأصلي من SQL Server 2005 وفي SQL Server 2005 المزود بحزمة الخدمة SP1. عدم الإعلام نسخة الإصدار الأصلي من SQL Server 2005 و SQL Server 2005 المزود بحزمة الخدمة SP1 رسائل التحذير drift. إذا كنت تقوم بتشغيل نسخة الإصدار الأصلي من SQL Server 2005 أو SQL Server 2005 المزود بحزمة الخدمة SP1 دون مشاكل يمكنك عموماً تجاهل الرسائل.

لماذا عبارة تأخير WAITFOR يعمل بشكل صحيح ؟ ماذا عن عمليات النظام دورية

لا تتأثر آليات المهلة التصميم ذات دقة عالية. لا يستخدم SQL Server المؤقت ذات الدقة العالية لأنشطة المستندة إلى مؤقت. تستند بعض الأنشطة المهلة جهاز ضبط الوقت وتقليل دقة تستخدم الدالة GetTickCount. تتضمن هذه الأنشطة المهلة مهلة تأمين بيان تأخير WAITFOR وعلى الكشف عن حالة توقف تام.
لمزيد من المعلومات، انقر فوق أرقام المقالات التالية لعرضها في "قاعدة المعارف لـ Microsoft:
938448خادم يستند إلى Windows Server 2003 قد تواجه drift العداد طابع زمني إذا كان الملقم يستخدم معالجات AMD Opteron وحدتين أو معالجات AMD Opteron متعدد المعالجات
895980البرامج التي تستخدم الدالة QueryPerformanceCounter قد تنفيذ بشكل سيئ في Windows Server 2003 في نظام التشغيل Windows XP
منتجات الجهات الأخرى المذكورة في هذه المقالة تكون تابعة لشركات مستقلة عن Microsoft. لا تقدم Microsoft أي ضمان ، ضمنيًا أو صريحًا، حول أداء أو ثبات النظام "من هذه المنتجات.
ساعة الحائط الوقت المنقضي مرة العامل, مدة تشغيل الوقت أو وقت النهاية ، علامات التجزئة أو الطابع الزمني ، GetTickCount, SystemTimeToFileTime, QueryPerformanceCounter QueryPerformanceFrequency

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 931279 - آخر مراجعة: 12/16/2008 14:32:10 - المراجعة: 7.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems

  • kbmt kbtshoot kbexpertiseadvanced kbsql2005engine kbprb KB931279 KbMtar
تعليقات
//c.microsoft.com/ms.js"> = 1; var Route = "76500"; var Ctrl = ""; document.write("