پایان نامه پیاده سازی الگوریتم FLB

تعداد صفحات: 104 فرمت فایل: word کد فایل: 10002239
سال: 1387 مقطع: کارشناسی دسته بندی: پایان نامه مهندسی کامپیوتر
قیمت قدیم:۱۷,۰۰۰ تومان
قیمت: ۱۴,۹۰۰ تومان
دانلود فایل
  • خلاصه
  • فهرست و منابع
  • خلاصه پایان نامه پیاده سازی الگوریتم FLB

    پایان نامه دوره کارشناسی ناپیوسته کامپیوتر

    گرایش نرم افزار

    (Fast Load Balancing for Distributed-Memory Machines)

    چکیده

    پیاده سازی الگوریتم FLB

    گرید محاسباتی  مجموعه ای از منابع نا همگن و پویا که بوسیله یک شبکه به یکدیگر متصل می شوندو کاربران زیادی در مکان های مختلف آنها را به اشتراک می گذارند.اغلب برنامه های کاربردی بوسیله گراف جهت دار بدون سیکل خلاصه می شوندکه رئوس آن کارها و یالهای آن ارتباطات بین کارها را نشان می دهد. که در آن کارها وابسته هستند و بر اساس اولویت باید اجرا شوند به این معنی که در گراف تا والد یک کار انجام نشود فرزند یا فرزندان نباید انجام شوند.

    برای اینکه تمام این اصول رعایت شود و از منابع به صورت بهینه استفاده گردد از الگوریتم های زمانبندی استفاده می کنیم.

    در اینجا ما ابتدا به بررسی مفهوم گرید وفواید آن  وسپس انواع زمانبندی در سیستم های توزیع شده و بررسی برخی از الگوریتم های زمانبندی در کارهای  مستقل و وابسته می پردازیم و روشهای زمانبندی  گراف برنامه وبعضی از الگوریتم های آنها در محیطهای ناهمگن وهمگن را معرفی می کنیم.سپس الگوریتمFLB راتشریح کردوشبیه ازهای گرید را بررسی می کنیم.

     

    واژه های کلیدی

    گراف جهت دار بدون سیکل ٬ کارهای وابسته٬  زمانبندی ٬گرید ٬تکثیر.

    فصل اول : مقدمه


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

    Mainfram  معایب

    هزینه سیستم های Mainfarme  . یکی از اولین دلایل مهم ، هزینه های بالای سیستم های Mainframe است . این مسئله از دو زاویه متفاوت قابل بررسی است : هزینه بالای سرمایه گذاری اولیه که بسیاری  از سازمان ها و موسسات توان مالی آن را ندارند و دوم اینکه در این مدل ، دارای صرفا" یک نقطه  آسیب پذیر با ریسک بالا می باشیم .

    مالکیت اختصاصی داده ها. یکی از فاکتورهای مهم دیگر،  سیاست های مربوط به مالکیت داده ها است . سازمان ها و موسسات که  دارای داده های اختصاصی خود می باشند،  علاقه مند به واگذاری مسئولیت مدیریت داده های مربوطه ،  به سایر مکان های فیزیکی نمی باشند .

    امنیت . یکی دیگر از فاکتورهای مهم در این زمینه موضوع امنیت است . برای یک سازمان ،  اولا" دستیابی به اغلب داده های آن می بایست بسادگی محقق گردد و ثانیا"  داده ها ی حساس موجود در  سازمان می بایست از بعد امنیتی،  ایمن نگهداری گردند . تامین دو خواسته فوق ( رویکردهای رقابتی  و رویکردهای امنیتی ) با جدا سازی فیزیکی داده از یکدیگر محقق خواهد شد ( انباشت داده ها، با نگرش های متفاوت در رابطه با سرعت در دستیابی و ایمن در ذخیره سازی ، ضرورت وجود برنامه های توزیع شده را بخوبی نمایان می سازد )  

     مسائل فوق،   ضرورت حرکت بسمت ایجاد یک الگوی جدید بمنظور طراحی برنامه های کامپیوتری را مطرح و بر همین اساس نسل جدیدی از برنامه های کامپیوتری با عنوان " برنامه های توزیع شده" در عرصه نرم افزار بوجود آمد.که این برنامه ها به سیستم های توزیع شده نیاز دارد.

    یک برنامه توزیع شده،   برنامه ای است که پتانسیل های پردازشی آن ممکن است توسط چندین کامپیوتر فیزیکی تامین  و داده های آن در چندین محل فیزیکی،  مستقر شده باشد .

    یک سیستم توزیع شده مجموعه ای از کامپیوتر هاست که دارای منابع اجرایی مختلف و زیادی هستند.

    مفهوم گرید 1-1

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

     

      مخصوصاً اینکه هزینه های نگهداری به عهده مالکین منابع می باشد و مدیریت این سیستم صرفاً از منابع برخط در زمانبندی برنامه ها استفاده می کنند.  با استفاده از گرید توان کامپیوتر ها دیگر بی معنا است ، صرف نظر از آن که کامپیوتر شما ضعیف و ابتدایی است ، می توانید به بیش از قدرت کامپیوتری دست یابید که هم اکنون در پنتاگون وجود دارد .

    یکی از مزایای مهم سیستم های توزیع شده سرعت بالای اجرای برنامه‌هاست چرا که یک برنامه همزمان می‌تواند از چندین کامپیوتر برای اجراء شدنش استفاده کند.[22]

      همچنین به علت توزیع شدن اطلاعات, بانکهای اطلاعاتی حجیم می‌توانند روی یکسری کامپیوترهای شبکه شده قرار بگیرند. و لازم نیست که همه اطلاعات به یک کامپیوتر مرکزی فرستاده شود(که در نتیجه این نقل و انتقالات حجیم زمان زیادی به هدر می‌رود.(

    به علت تأخیر‌های انتقال در شبکه و نویزهای احتمالی در خطوط انتقالی قابلیت اعتماد اجرای یک برنامه دریک سیستم تنها,بیشتر از قابلیت اجرای آن دریک سیستم توزیع شده است .

    همچنین درسیستم توزیع شده اگر یکی از کامپیوتر هایی که وظیفه اصلی برنامه جاری را برعهده دارد خراب شود کل عمل سیستم مختل خواهد شد . از طرف دیگر اگر اطلاعاتی همزمان در چند کامپیوتر به صورت یکسان ذخیره گردد ویکی از کامپیوترها خراب شود, داده هارا می‌توان از کامپیوترهای دیگر بازیابی کرد از این نظر امنیت افزایش می‌یابد.

    اشتراک  به منابع محاسباتی محدود نمی­شود. انواع منابع اعم از انباره­ها،نرم­افزار و بانک­های اطلاعاتی را در بر می­گیرد. در عین حال، امنیت و سیاست محلی نیز تضمین می­شود.[21]

    بعد از اتصال به گرید، کاربر استخر بزرگی از منابع را در اختیار دارد. هنگامی که بار کاری سیستم محلی سنگین باشد، می­توان بخشی از بارکاری را به سایر منابع گرید منتقل کرد.

     

      2-1طبقه بندی گرید

     

    گرید محاسباتی: شامل گره­هایی است که محاسبات کارها را انجام می­دهد. معمولا از گرید محاسباتی برای اجرای موازی برنامه­ها به منظور دست یافتن به کارایی بهتر استفاده می­شود.

    گرید داده: شامل گره­هایی است که امکان ذخیره و بازیابی حجم بالایی از داده­ها  را فراهم می­کند. در چنین سیستمی، هم داده­ها و هم کاربران توزیع شده اند. این سیستم با مشکلاتی  از قبیل حجم بالای داده که ممکن است افراز شده باشد، تکرار در چندین سایت و ناسازگاری داده­ها روبروست.

    گرید خدماتی: شامل گره­هایی است که تقاضاها را به کمک سرویسهای از قبل موجود، پاسخ می­دهند. زمانی که تقاضایی به چنین گره­ای ارسال می­شود، ابتدا تقاضا معنا می­شود تا مشخص شود که تقاضا کننده،  خواستار انجام چه سرویسی است  و نهایتا نتیجه به متقاضی برگشت داده می­شود.

    هرچند مرز مشخصی بین این سه دسته وجود ندارد، اما بحث ما معطوف به گریدهای محاسباتی است.

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

    هزینه اجرای کار نیز به نگرانی های کاربران اضافه شد .

     

    1 – 3 ارزیابی گرید

       سه مرحله برای ارزیابی گرید وجود دارد اول:تولید سیستم هایی که در اوایل 1990 متولد شد. دوم:تولید سیستم با تمرکز روی ابزار برای حمایت از معیار های بزرگ داده و محاسبه جریان الکتریکی . سوم: تولید سیستم هایی که برای همکاری جهانی بر تغییرات تاکیید دارد .

    اولین تولید فوریتی فرا محاسبه یا محیط های گرید نام گذاری شده است. عموما واقعیت این پروژه بهبود بخشیدن به منابع محاسباتی در یک دامنه کاربردوسیع بود. پروژه ارائه شده پیشگام این تکنولوژی [3]فافنر بود.

    نسل دوم  گرید در  نتیجه یک فوریت از یک زیر ساخت که قادر به بهم پیوند دادن بیشتر مرکزهای سوپر محاسباتی مشخص شده است. اکنون  با ارتقا تکنولوژیهای شبکه وسازگاری آن با استانداردهای گرید می تواند به عنوان یک زیر ساخت توزیع کننده ممکن و قابل قبول در مقیاس های بزرگ که محاسبات را می خواهند حمایت کنند. در این نوع گرید به طور معمول طبیعت نا همگون منبع ها و بهبود بخشیدن کاربرد ها با محیط همگون ویکنواخت را با مجموعه ای از واسط های استاندارد پنهان می کند.گلو باس  [20]یکی از پروژه های توزیع شده است که برای اینکه گرید را استوار کند.

    نسل سوم:سازگاری و انطباق زیادی از مدل های خدمات هدفمند وجود دارد . یک حالت قوی از اتوماسیون در سیستم های این نسل وجود دارد . برای مثال زمانی که انسانها نمی توانند برای مدت طولانی مقیاس و ناهمگونی منابع را ارتباط دهند اما ارسال برای پردازش انجام می شود که باعث خود گردانی درون سیستم ها می شود.

     

        4-1 کاربردهای گرید

     

        اخیرا تلاش زیادی برای انتقال دادن برنامه های کاربردی به گرید صورت گرفته است.یک مثال پروژه EGEE است. هدف های آن بهبود بخشیدن کار محققان در دانشگاه و صنعت  با دسترسی به منبع های محاسباتی اصلی و مستقل از محل جغرافیایی آنها است.تمرکز روی تعداد زیادی از کاربران گرید است.دو کاربرد برای پیدا کردن تایید اجرا  و کارایی زیر ساختها انتخاب شده است یکی محاسبه برخوردها با پشتیبانی از انرژی فیزیکی بالا در آزمایشات فیزیک ودیگری گرید های پزشکی که چندین گروه به طور یکسان با مشکلات سیل عظیم اطلاعات و داده های مراقبت از سلامت روبه رو هستند.[14]  

    نمونه : تلسکوپ جادوگر(majic)

    تلسکوپ طراحی شده برای جستجو در آسمان تا منابع انرژی گاما را مشاهده و کشف کند و اطلاعات فیزیکی زیادی را بررسی کند.

    آن بزرگترین تلسکوپ اشعه گاما در جهان است و چندین تلسکوپ دیگر در کشورهای اروپایی به آن در جمع آوری اطلاعات کمک می کنند.توزیع جغرافیایی منابع مدیریت آنها را مشکل می کند و این یک نمونه برای گرید محاسباتی است که می تواند کمک بزرگی بکند زیرا محققان می تواند به طور یکسان به تمام منابع دسترسی داشته باشند. تلسکوپ در شبهای اول ماه کار می کند و حدود 600 گیگا بایت اطلاعات در شب ثبت می کند داده های اضافی  تلسکوپ و اطلاعات هوا شناسی نیز ذخیره می شوند.تمام این داده ها باید دریافت و آنالیز شوند.[11]    

       نمونه رایج استفاده از گرید در هواشناسی است.که در آن ایستگاه تلوزیون و شرکت ماهواره ای و مر کز تجسم و یک کامپیوتر مرکزی وجود دارد که ایجاد امنیت و ارتباطات آنها در محیط گرید فراهم می شود.

    قدرت گرید بخصوص در پردازش های فشرده مثل تحقیقات علمی و نمونه های مالی و طراحی های صنعتی و نمودار پرداخت تصویر مفید تر است.

    1-5   تعریف زمان بندی گرید

     

        زمان­بند،  مدیر منبعی میانی است  و واسطی است بین مصرف کننده­ها و منابع.

    در محیطهای توزیع شده، گروهی از کاربران برنامه­های خود را برای اجرا به مجموعه ای از منابع می­فرستند. سیستم زمان­بند چنین محیط توزیع شده­ای، مسئول مدیریت منابع و برنامه­­هاست.  سیستم  زمان­بند بایستی بتواند منابع مناسبی به برنامه­ها اختصاص داده  و اهداف کارایی را نیز برآورده سازد. سیستم زمان­بند محیطهای محاسباتی موازی سنتی به دلیل خصوصیات یکسان برنامه­ها وخصوصیات یکسان منابع،  ساده تر است. در فرهنگ لغت GGF [1]، مراحل زمان­بندی گرید به شرح زیر بیان شده است: کشف منبع در دسترس برای برنامه، انتخاب سیستم یا سیستم­های مناسب آن و  پذیرش برنامه. به طور خلاصه می­توان گفت زمان­بندی گرید، قالبی است نرم­افزاری که اطلاعات وضعیت منابع را جمع نموده،  منابع مناسب را نامزد نموده،  کارایی هر نامزد را پیش بینی نموده  و بهترین منبع را تعیین می­کند.

     

      1-6 مروری بر تحقیقات گذشته

         طیف وسیع کاربران گرید دارای برنامه­هایی با نیازمندی­های متفاوت هستند. ممکن است برنامه­های آنان دسته­ای و یا به خط[2] باشد،  شامل کارهای  وابسته به هم و یا مستقل  باشد.  به همین دلیل، ارائه الگوریتم زمان­بندی همه منظوره که بتواند برای تمامی سناریوها مناسب باشد، امکان­پذیر نیست. از این رو ما بحث خود را به زمان­بندی کارهای وابسته، معطوف نموده ایم. هنگامی که کارهای تشکیل دهنده برنامه دارای ترتیب تقدمی باشند، برنامه، به شکل گراف جهتدار بدون سیکل (DAG[3]) مدل می­شود که در آن گره­ها نشان دهنده کارها و لبه­ها نشان دهنده ترتیب گره­هاست. گاهی اوقات وزنی نیز به گره­ها و لبه­ها اضافه می­شود که به ترتیب نشان دهنده هزینه­های محاسباتی و هزینه­های ارتباطی است.  ایجاد تعادل بین به حداکثر رساندن موازی سازی و به حداقل رساندن تاخیر ارتباطی به عنوان مسئله مهمی در زمان­بندی کارها مطرح است. برای زمان­بندی گراف برنامه، الگوریتم­های ابتکاری[4] متعددی مطرح شده است. برای زمان­بندی گراف برنامه، الگوریتم­های ابتکاری[5] متعددی مطرح شده است. این الگوریتم­ها را می­توان به سه دسته کلی تقسیم کرد. الگوریتم­های بر پایه  لیست[6]، الگوریتم­های بر پایه تکرار[7] و الگوریتمهای  کلاسترینگ[8]. ­

  • فهرست و منابع پایان نامه پیاده سازی الگوریتم FLB

    فهرست:

    فصل اول  :  مقدمه   

    1-1مفهوم گرید..................................................2   

      1-2طبقه بندی گرید............................................. 4                         

     3-1 ارزیابی گرید............................................... 4                 

    1-4کاربردگرید...................................................5                     

    1-5 تعریف زمانبندی گرید........................................6  

    1-6 مروری بر تحقیقات گذشته......................................7    

    1-7 مفهوم اصطلاحات به کار برده شده..............................8

    1-8 نمای کلی پایان نامه.........................................9

    فصل دوم:زمانبندی کارها در سیستم های توزیع شده

    2-1 زمانبندی کلاستر و ویژگیهای آن .............................. 10 

    2-2 زمانبندی گرید و ویژگیهای آن................................13   

     3-2  رده بندی الگوریتم های زمانبندی گرید....................... 16 

      2-3-1   زمانبندی محلی/سراسری................................. 16            

      2-3-2  زمانبندی ایستا/پویا...................................16    

      2-3-3  زمانبندی بهینه/نزدیک به بهینه...........................21

      2-3-4  زمانبندی توزیع شده/مرکزی..............................22

      2-3-5  زمانبندی همکار و مستقل...............................22

    2-3-6  زمانبندی زمان کامپایل /اجرا........................ 23

     2-4-1  رده بندی الگوریتم های زمانبندی از دیدگاهی دیگری..... 23

      2-4-2  اهداف زمانبندی.........................................23  

      2-4-3   زمانبندی وفقی.......................................24

      2-4-4 رده بندی برنامه های کاربردی...........................25

       2-4-4-1  کارهای وابسته.....................................25

       2-4-4-2  گراف کار..........................................26

     2-4-5   وابستگی کارهای تشکیل دهنده برنامه کاربردی...........       26   

    2-4-6  زمانبندی تحت قیود کیفیت سرویس..........................26   

    2-4-7  راهکارهای مقابله با پویایی گرید.......................28

     2-5  الگوریتم های زمانبندی کارهای مستقل......................32

    2 -5-1 الگوریتم   MET   ...........................................32

          2-5-2  الگوریتم  MCT ..............................................32

          2-5-3 الگوریتم   Min-min...............................................33

      2-5-4  الگوریتم Max-Min ................................................33

    2      -5-5 الگوریتم Xsuffrage  ..............................................34                                 

    2   -5-6-  الگوریتم GA . ...........................................35      

    2-5-7- الگوریتم        SA. ...........................................37 

    فصل سوم:الگوریتم های زمانبندی گراف برنامه

    3-1 مشکلات زمانبندی گراف برنامه.................................39

    3-2 تکنیک­های مهم زمان­بندی گراف برنامه در سیستم­های توزیع شده.....40   

    3-2-1-  روش ابتکاری بر پایه لیست ................................ 40

      3-2-2- روش ابتکاری بر پایه تکثیر................................40

      3-2-3- روش ابتکاری کلاسترینگ......................................41

     3-3- دسته بندی الگوریتم­های زمان­بندی گراف برنامه در سیستم­های توزیع شده.....................................................44

     3-4- پارامترها و مفاهیم مورد استفاده در الگوریتم­های زمان­بندی گراف   برنامه.........................................................46

     3-5- الگوریتم­های زمان­بندی گراف برنامه با فرضیات محدودکننده......50

      3-5-1- الگوریتمی با زمان چند جمله­ای برای گراف های درختی - الگوریتم HU ....................................................50

      3-5-2- الگوریتمی برای زمان­بندی گراف برنامه  با  ساختار دلخواه در سیستمی با دو پردازنده..........................................51 

      3-5-3- الگوریتمی برای زمان­بندی گراف بازه­ای مرتب شده............52

     3-6- الگوریتم­های زمان­بندی گراف برنامه در محیطهای  همگن ..........54

      3-6-1- الگوریتم Sarkar................................................54

       3-6-2- الگوریتمHLFET................................................55

       3-6-3- الگوریتم ETF................................................55

       3-6-4- الگوریتم ISH ..............................................55

       3-6-5- الگوریتم FLB................................................56

       3-6-6- الگوریتم DSC................................................56

       3-6-7- الگوریتم CASS-II..............................................58

       3-6-8- الگوریتم DCP................................................59

       3-6-9- الگوریتم MCP................................................60

       3-6-10- الگوریتم MD...............................................61

       3-6-11- الگوریتم TDS...............................................61

     3-7- الگوریتم­های زمان­بندی گراف برنامه در محیطهای ناهمگن...............63    

      3-7-1- الگوریتم HEFT................................................63

      3-7-2- الگوریتم CPOP..................................................63

      3-7-3- الگوریتم LMT.................................................64

      3-7-4- الگوریتمTANH .................................................65  

     فصل چهارم :الگوریتم FLB

    1-4           ویژگیهای الگوریتم........................................66  

        4-2 اصطلاحات به کار برده شده.................................66

        4-3 الگوریتم................................................67  

        4-4 پیچیدگی الگوریتم........................................75       

        4-5 کارایی الگوریتم.........................................77 .

    فصل پنجم: شبیه سازی گرید

        5-1 ابزار شبیه سازی...................................79

            5-1-1- optosim..................................................79

            5-1-2 SimGrid ..................................................80

            5-1-3- Gridsim  ..................................................80

     کارهای انجام شده...............................................83          پیشنهادات............................................................83 

     مراجع     .............................................................85   

    .

    منبع:

    [1]    A. Darte. Two heuristics for task scheduling, laboratoire lip-imag, ecole normale

              superieure de lyon, 69364. 1991.

     

    [2]   A. Radulescu and A. J. C. van Gemund. Flb: Fast load balancing for

              distributed-memory machines. In Proc. Int’l Conf. on Parallel Processing, 1999.

     

       [3]   A. R˘adulescu and A. J. C. van Gemund. On the complexity

          of list scheduling algorithms for distributed-memory

          systems. In Proc. ICS, pages 68–75, June 1999.

     

     

    [4]   Amstrong, R., Hensgen, D., and Kidd, T. (1998). The relative performance of various

             mapping algorithms is independent of sizable variances in run-time predictions.

            IEEE Heterogeneous Computing Workshop(HCW’98), pages 79–87.

     

    [5]    Aubin Jarry, Henri Casanova, and Francine Berman. Dagsim: A simulator for

             dag scheduling algorithms. Technical Report RR2000-46, LIP, 2000.

     

    [6]    Beaumont, O., Legrand, A., Marchal, L., and Robert, Y. (2005). Independent and

              divisible tasks scheduling on heterogeneous star-shaped platforms with limited

             memory. Proceedings of the Conference on Parallel,Distributed and Network-

            Based Processing(Euromicro-PDP’05), pages 179–186.

     

    [7]  Braun, T., Siegel, H., Beck, N., and Freund, R. (2001). A comparision of eleven static

             heuristics formapping a class of independent tasks onto heterogeneous distributed

             computing systems. Journal of Parallel and Distributed Computing, 61:810–837.

     

     

    [8]    Casavant, T. and Kuhl, J. (1988). A taxonomy of scheduling in general-purpose

             distributed computing systems. IEEE Transactions on Software Engineering,

             14(2):141–153.

     

    [9]  C.A. Glass, C.N. Potts, and P. Shade. Unrelated parallel machine scheduling

            using local search. Mathematical and Computer Modelling, 20(2):41–52, July

            1994.

     

    [10 ]  D.K. Friesen. Tighter bounds for lpt scheduling on uniform processors. SIAM

              Journal on Computing, 16(3):554–560, June 1987.

     

    [11]   Eckart Lorenz and the MAGIC collaboration. Status of the 17m diameter magic

            telescope. New Astronomy Reviews, 48(5-6):339–344, April 2004.

     

     

    [12]      E.G. Coffman. Computer and Job-Shop Scheduling Theory. Wiley, 1976.

     

    [13]     E.G. Coffman and R.L. Graham. Optimal scheduling for two-processor systems.

              Acta Informatica, 1:200–213, 1972.

     

    [14]    EGEE Project. http://public.eu-egee.org/.

     

    [15]   F. Berman, R.Wolski, H. Casanova,W. Cirne, H. Dail, M. Faerman, S. Figueira,

             J. Hayes, G. Obertelli, J. Schopf, G. Shao, S. Smallen, S. Spring, A. Su, and

            D. Zagorodnov. Adaptive computing on the grid using apples. IEEE Trans. on

            Parallel and Distributed Systems (TPDS), 14(4):369–382, 2003.

     

     

     

    [16]   F.D. Berman, R. Wolski, S. Figueira, J. Schopf, and G. Shao. Applicationlevel

            scheduling on distributed heterogeneous networks. In ACM Press, editor,

           Proceedings of the 1996 ACM/IEEE conference on Supercomputing,, 1996.

     

    [17] GridSim (2002). The gridsim project homepage. http://www.gridbus.org/gridsim/.

     

    [18]     H. El-Rewini and T.G. Lewis. Scheduling parallel program tasks onto arbitrary

                target machines. Journal of Parallel and Distributed Computing, 9:138–153,

              1990.

     

    [19]      Ibarra, O. and Kim, C. (1977). Heuristic algorithms for scheduling independent tasks

               on non-identical processors. Journal of the ACM, 24(2):280–289.

     

    [20] I. Foster and C. Kesselman. Globus: A metacomputing infrastructure toolkit.

    Intl. J. Supercomputer Application, 11(2):115–128, 1997.

     

     

    [21]    I. Foster and C. Kesselman. The Grid: Blueprint for a New Computing Infrastructure.

              Morgan Kaufmann, San Francisco, CA, 1998.

     

    [22]    I. Foster, J. Geisler, W. Nickless, W. Smith, and S. Tuecke. Software infrastructure

              for the i-way high performance distributed computing experiment. In

              Proc. 5th IEEE Symposium on High Performance Distributed Computing, pages

            562–571, 1997.

     

    [23]   J. J. Hwang, Y. C. Chow, F. D. Anger, and C. Y. Lee. Scheduling precedence

             graphs in systems with interprocessor communication times. SIAM Journal on

              Computing, 18(2):244–257, April 1989.

     

    [24]   Jing-Chiou Liou and Michael A. Palis. An efficient task clustering heuristic for

             scheduling dags on multiprocessors. In Symposium of Parallel and Distributed

           Processing, 1996.

     

    [25]   Manzur Murshed Gippsland, Rajkumar Buyya , “Using the GridSim ToolKit for

             Enabling Grid Computing Education”.

     

    [26]    M.R. Garey and D.S. Johnson. Computers and Intractability: A Guide to the

             Theory of NP-Completeness. W.H. Freeman and Company, 1979.

     

    [27]      M. Maheswaran and H. J. Siegel. A dynamic matching and scheduling algorithm

              for heterogeneous computing system. In the 7th Heterogeneous Computing

            Workshop(HCW ’98), pages 57–69. IEEE Computer Society Press, March 1998.

     

    [28]    N. Tonellotto, Information Science and Technologies Institute Italian National

             Research Council Italy, R. Yahyapour Institute for Robotics Research University of

            Dortmund Germany, “A Proposal for a Generic Grid Scheduling Architecture”.

     

    [29]   O. Ibarra and C. Kim. Heuristic algorithms for scheduling independent tasks

             on nonidentical processors. Journal of the ACM, 77(2):280–289, April 1977.

     

    [30]   Pam, M. (1988). Software pipelining:an effective scheduling technique for vliw machines.

             In Proceedings of the SIGPLAN’88, pages 318–328.

     

    [31 ]   P.C. Fishburn. Interval Orders and Interval Graphs. John Wiley & Sons, 1985.

     

    [32]    R.L. Graham. Bounds on multiprocessing timing anomalies. SIAM J. Appl.

             Math., 17:416–429, 1969.

     

    [33]   R.L. Graham, E.L. Lawler, J.K. Lenstra, and A.H.G. Rinnoy Kan. Optimization

              and approximation in deterministic sequencing and scheduling: A survey.

            Annals of Discrete Mathematics, (5):287–326, 1979.

     

    [34]    S. J. Kim and J. C. Browne. A general approach to mapping of parallel computation

              upon multiprocessor architectures. Proc. Int’l. Conf. on Parallel Processing,

             pages 1–8, 1998.

     

    [35]   R. Sethi. Scheduling graphs on two processors. SIAM Journal of Computing,

               5(1):73–82, March 1976.

     

     

    [36]     T. Adam, K.M. Chandy, and J.R. Dickson. A comparison of list schedules for

             parallel processing systems. CACM, 17(12):685–690, 1974.

     

     

    [37]    T.C. Hu. Parallel sequencing and assembly line problems. Oper. Research,

            19(6):841–848, November 1961

     

    [38]   T. Yang and A. Gerasoulis. Dsc: Scheduling parallel tasks on an unbounded

                number of processors. IEEE Transactions on Parallel and Distributed Systems,

              5(9):951–967, September 1994.

     

    [39]   W.H. Kohler and K. Steiglitz. Characterization and theoretical comparison of

               branch-and-bound algorithms for permutation problems. Journal of the ACM,

              21(1):140–156, January 1974

     

    [40]   Yu-Kwong Kwok and Ishfaq Ahmad. Static scheduling algorithms for allocating

              directed task graphs to multiprocessors. ACM Computing Surveys, 31(4):406–

             471, 1999.

     

    [41]    Eclipse Project, http://www.eclipse.org/eclipse/

     

    [42]    FAFNER. http://www.npac.syr.edu/factoring.html.

     

    .

ثبت سفارش
عنوان محصول
قیمت