بهبود روش های همگام سازی بین بلاکی در کودا
عدم پشتیبانی صریح همگام سازی بین بلاکی در مدل برنامه نویسی کودا، باعث تضعیف کارآیی در برخی از برنامه های کاربردی شده است. بنابراین در چنین برنامه هایی، همگام سازی بین بلاکی باید به صورت نرم افزاری پیاده سازی شود. روش های باقفل و بدون قفل برای این مسیله پیاده سازی شده اند. در همگام سازی باقفل، زمان اجرا با افزایش تعداد بلاک رشد چشمگیری دارد و در روش همگام سازی بدون قفل، محدودیت تعداد بلاک ها وجود دارد. در این مقاله، دو روش همگام سازی بین بلاکی پیشنهاد می شوند. اولین روش مبتنی بر همگام سازی باقفل است که با گروه بندی مناسب بلاک ها، تاثیر افزایش تعداد بلاک بر زمان اجرا را کاهش می-دهد. دومین روش پیشنهادی همگام سازی بدون قفل است که با ایجاد یک سلسله مراتبی درختی از بلاک ها، محدودیت تعداد بلاک-ها در این همگام سازی را مرتفع می کند. این روش ها برای همگام سازی بین بلاکی در الگوریتم های اسمیت واترمن و مرتب سازی بایتونیک به کار گرفته شده اند. نتایج آزمایش ها نشان می دهند که روش باقفل پیشنهادی، زمان اجرای همگام سازی را بهبود می بخشد و تسریع 1.84 در الگوریتم اسمیت واترمن و 2.24 را در الگوریتم مرتب سازی بایتونیک ثبت کرده است. همچنین نتایج نشان می دهند که در روش پیشنهادی بدون قفل نیز با انتخاب درست تعداد سطوح سلسله مراتب درختی، هر تعداد بلاک می توانند همگام شوند و بنابراین محدودیت تعداد بلاک ها مرتفع شده است.
- حق عضویت دریافتی صرف حمایت از نشریات عضو و نگهداری، تکمیل و توسعه مگیران میشود.
- پرداخت حق اشتراک و دانلود مقالات اجازه بازنشر آن در سایر رسانههای چاپی و دیجیتال را به کاربر نمیدهد.