چکیده
حرکت به سمت برنامه های کاربردی رایانش با کارایی بالا (HPC) شامل زوج کدها و نیاز به کاهش گردش داده، منجر به بازنگری اشتراک گذاری زمان و محل در سیستم های HPC شده است. در این مقاله، ما تاثیر عملکردی عدم اشتراکگذاری فضای نودها در HPC را بررسی می کنیم. به طور خاص، هزینه بالقوه عملکرد اشتراک گذاری زمانی گرهها را بین اجزای نرم افزار تعیین می کنیم، و مشخص می کنیم که آیا یک مکانیسم زمان بندی هماهنگ ساده می تواند این مشکلات را حل کند یا نمی تواند، و همچنین میزان مناسب بودن تکنیک های بهینه سازی مبتنی بر محدودیت های ساده را برای حل چالش های زمان بندی بررسی می کنیم. نتایج نشان می دهد که این برنامه ریزی نرم افزار سیستم HPC با اهداف کلی، دارای معایب کاربردی قابل توجهی است که ما تعدادی از آن ها را برای شش برنامه کاربردی بیان میکنیم. بر اساس این نتایج، ما مواردی را بررسی می کنیم که در آن تحقیقات بیشتری برای مقابله با چالش های برنامه ریزی سیستم های HPC نسل بعدی مورد نیاز است.
1. مقدمه
نرم افزار سیستم برای نسل بعدی سیستم های رایانش با کارایی بالا (HPC) با طیف وسیعی از مشکلات زمان بندی و تخصیص منابع روبرو است که به علت تغییرات نرم افزاری و سخت افزاری به وجود آمده است. به عنوان مثال، نرم افزارهای علمی در مقیاس بزرگ به انجام شبیه سازی و تجزیه و تحلیل همزمان به جای متوالی پرداخته اند. همچنین، محدودیتهای حافظه سخت افزاری و پهنای باند شبکه و پوشش توان بالقوه سیستم انگیزه ای بوجود آورده است که ایجاد تغییرات در داده و توان قطعات سخت افزاری غیر ضروری را در هر جایی که ممکن است حداقل کنیم.
6. نتیجه گیری و اقدامات آتی
در این مقاله ما چالش های زمان بندی مرتبط با برنامه های کاربردی مقیاس بزرگ با کارایی بالا را ارائه کردیم. ما بر روی مکانیزم های سطح گره ای تمرکز کردیم که چارچوب جدید باید ارائه کند تا برنامه HPC انتخاب شده زمان-بندی شود. توانایی بهینه سازی عملکرد و یا انرژی در سیستم های Exascale پیچیده از اقدامات بعدی ما است. ما چالش های پیشروی زمان بندی در سیستم های مقیاس بزرگ را بررسی کردیم. به عنوان کارهای بعدی، قصد داریم چالش های زمان بندی زیر را بررسی کنیم: چگونه ما به صورت موثر زمان بندی مشارکتی و هماهنگ را در گره های متعدد ادغام کنیم؟ کدام مکانیزم هماهنگی/سنکرونیزاسیون بین زمانبندهای سطح گره باید با چارچوب جدید ارائه شود؟ چگونه ما رویکرد ارائه سطح بالا را از طریق مکانیزم های زمان بندی سطح پایین تعیین کنیم؟ چه نوع واسطه ای باید توسط زمانبند سطح گره برای تهیه کننده فراهم شود؟ کدام معیارها باید توسط زمانبند سطح گره به تهیه کننده گزارش شود؟
ABSTRACT
The move towards high-performance computing (HPC) applications comprised of coupled codes and the need to dramatically reduce data movement is leading to a reexamination of time-sharing vs. space-sharing in HPC systems. In this paper, we discuss and begin to quantify the performance impact of a move away from strict space-sharing of nodes for HPC applications. Specifically, we examine the potential performance cost of time-sharing nodes between application components, we determine whether a simple coordinated scheduling mechanism can address these problems, and we research how suitable simple constraint-based optimization techniques are for solving scheduling challenges in this regime. Our results demonstrate that current generalpurpose HPC system software scheduling and resource allocation systems are subject to significant performance deficiencies which we quantify for six representative applications. Based on these results, we discuss areas in which additional research is needed to meet the scheduling challenges of next-generation HPC systems.
1. INTRODUCTION
System software stacks for next-generation high-performance computing (HPC) systems face a range of scheduling and resource allocation problems due to changes in applications and hardware. For example, large-scale scientific applications are beginning to perform simulation and analysis concurrently instead of sequentially. Also, hardware memory and network bandwidth restrictions and potential system power caps motivate the need to minimize data movement and power down unneeded hardware components whenever possible.
6. CONCLUSION & FUTURE WORK
In this document we presented emerging scheduling challenges associated with large-scale high performance applications. We focused on the node-level mechanisms that new frameworks must provide to schedule selected HPC applications. Among the forthcoming needs are the ability to optimize performance or energy across complex exascale systems. We quantified the impact of the new scheduling challenges faced by extreme-scale systems. As future work, we plan to investigate a set of scheduling challenges which include: How do we efficiently integrate cooperative and coordinated scheduling across multiple nodes? Which coordination/synchronization mechanisms between node-level schedulers must be provided by the new frameworks? How do we efficiently handle high-level provisioning policies through low-level scheduling mechanisms? What kind of interfaces must be provided by the node-level schedulers to the provisioner? Which metrics must be reported by the node-level schedulers to the provisioner?
چکیده
1. مقدمه
2. چالش های زمان بندی جدید در سیستم های مقیاس کوچک
2.1 تخصیص منبع کارآمد در سطح گره
2.2 مکانیزم هماهنگ سازی/ همزمان سازی کارآمد داخل و بین گره ای
2.3 قرارگیری مشترک درون بوم های همکار
3. تاثیرچالش های زمان بندی جدید در عملکرد نرم افزارهای HPC.
3.1 بهینه سازی عددی تخصیص منابع در سطح گره
3.2 مکانیزم سنکرونیزه کردن
3.3 هم مکانی درون بوم های همکار
4. چالش های پژوهش
4.1 مکانیزم هماهنگ سازی/ سنکرونیزه کردن حجم کار
4.2 ملاحظات نگاشت منبع سطح گره
4.3 اهمیت توان
5. آثار مرتبط
5.1 پشتیبانی رویکردهای (سیاست های) سطح بالا
5.2 تخصیص منابع سطح گره
5.3 زمان بندی حجم کار مشارکتی
5.4 زمان بندی گروهی
5.5 زمان بندی زمان حقیقی
6. نتیجه گیری و اقدامات آتی
ABSTRACT
1. INTRODUCTION
2. NEW SCHEDULING CHALLENGES IN EXASCALE SYSTEMS
2.1 Efficient Node-level Resource Allocation
2.2 Efficient Intra-node and Inter-node Synchronization/Coordination Mechanisms
2.3 Co-location of Cooperative Enclaves
3. IMPACT OF THE NEW SCHEDULING CHALLENGES ON HPC APPLICATIONS PERFORMANCE
3.1 Numerical Optimization of Node-level Resource Allocation
3.2 Synchronization Mechanisms
3.3 Co-location of Cooperative Enclaves
4. RESEARCH CHALLENGES
4.1 Workload Coordination/Synchronization Mechanisms
4.2 Node-Level Resource Mapping Considerations
4.3 Power Concerns
5. RELATED WORK
5.1 High-Level Policies Support
5.2 Node-level Resource Allocation
5.3 Scheduling of Cooperative Workloads
5.4 Gang Scheduling
5.5 Real Time Scheduling
6. CONCLUSION & FUTURE WORK