loading...

مجازی سازی و رایانش ابری

Microsoft sql server یک ابزار دسترسی به حافظه به شکل غیرهمسان را دارا می باشد که در سخت افزارهای numa و بدون  نیاز به پیکربندی خاصی به راحتی کار می کند.با افزایش سرعت clock و تعداد پردازنده ها، ک

شهاب ترابی بازدید : 60 جمعه 11 بهمن 1398 نظرات (0)

Microsoft sql server یک ابزار دسترسی به حافظه به شکل غیرهمسان را دارا می باشد که در سخت افزارهای numa و بدون  نیاز به پیکربندی خاصی به راحتی کار می کند.

با افزایش سرعت clock و تعداد پردازنده ها، کاهش میزان تاخیر پاسخدهی حافظه دشوار می شود. برای حل این موضوع سازندگان سخت افزار کش های L3 را طراحی کرده اند.اما راه حل بهتر استفاده از معماری Numa است. معماری numa راه حلی جامع را برای این مشکل فراهم آورده است. sql server  به شکلی طراحی شده تا از سایر مزایای کامپیوترهایی که بر مبنای Non-uniform memory access هستند بدون هیچ گونه تغییری در برنامه بهره مند گردد.

هر گروه از پردازنده ها حافظه ی مخصوص خود را داشته و کانال های ورودی/خروجی خود را نیز دارد.هر cpu میتواند به حافظه ای که گروه های دیگر از آن استفاده می نمایند دسترسی داشته باشد. هر گروه یک نود numa نامیده می شود. از آنجایی که دسترسی به حافظه داخلی در مقایسه با اختصاص حافظه به نود numa  سریعتر انجام می پذیرد ، به همین دلیل numa را معماری دسترسی به حافظه به شکل غیریکنواخت می نامیم.

در سخت افزار numa برخی مناطق حافظه به صورت فیزیکی متفاوت از سایر مناطق دیگر می باشند. از آنجاییکه numa از حافظه داخلی و بیرونی استفاده می نماید دسترسی به برخی مناطق با زمان بیشتری انجام می شود. حافظه داخلی حافظه ای است که مربوط به  نودی می شود که  cpu در حال اجرای thread است. هر حافظه ای که به این نود تعلق ندارد خارجی نامیده می شود.

مهمترین حسن Non-uniform memory access مقیاس پذیری آن است. در روش smp همه ی دسترسی به یک حافظه اشتراکی داده می شود و کل cpu به طور همزمان از آن استفاده می نمایند.

Numa با محدود کردن درگاه تعداد cpu ها  و اتصال نودها با اتصالات داخلی سریع این مشکل را مرتفع کرده است.

زمانیکه sql server با پیکربندی non-local memory اجرا می شود، لاگ sql server پیام های چندگانه را برای تمامی نودها به صورت جداگانه ثبت می کند.

کامپیوترها با hard numa بیش از یک bus دارند که چندین پردازنده را به خدمت می گیرند.برای اینکه متوجه شوید سیستم شما سخت افزار numa را دارد یا خیر از دستورات ذیل استفاده نمایید :


SELECT DISTINCT memory_node_id
FROM sys.dm_os_memory_clerks


اگر خروجی دستور node 0 باشدبدین معنی است که hard numa را پشتیبانی نمی نماید.

Soft numa زمانی مورد استفاده قرار می گیرد که شما سخت افزار cpu به تعداد زیاد نداشته باشید. تنها افزارهای SQL Server scheduler و SQL Server Network Interface معادل soft numa هستند.

نودهای حافظه که بر روی hard numa ساخته می شوند دیگر نیازی به soft numa ندارند.

نکته : شما نمی توانید soft numa بسازیدکه شامل  چند cpu  با سخت افزارهای مختلف باشد.

ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آمار سایت
  • کل مطالب : 8
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • آی پی امروز : 5
  • آی پی دیروز : 4
  • بازدید امروز : 3
  • باردید دیروز : 0
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 44
  • بازدید ماه : 42
  • بازدید سال : 604
  • بازدید کلی : 2,062