APP下载

高性能机群计算本科教学研究

2011-12-31

计算机教育 2011年16期

  摘要:针对目前高性能机群人才需求旺盛而高校对高性能机群计算知识普及不够的现状,以培养工程实践性机群系统管理人员为目标,阐述面向高校计算机专业本科生开设高性能机群计算课程的教学目标;并进行课程设计,包括教学内容及教材选取、课时安排以及教学方法设计。北京工业大学的教学实践表明,上述课程设计取得了较好的教学成效。
  关键词:高性能机群;工程人才;课程设计
  
  高性能机群计算是指以提高科学计算及企业计算能力为目的的机群技术,是高性能计算的支撑技术。目前,机群以其高性价比、可扩展性等优势已成为高性能计算的主流平台架构。随着企业、高校及科研院所纷纷构建机群系统,对机群系统管理人员的需求旺盛[1]。针对高校学生,尤其是计算机专业学生,普及高性能机群计算技术,培养机群技术人才是适应社会人才需求、促进高性能机群产业发展的重要举措。
  目前,对高校本科生开展高性能机群计算普及和推广教学的主要形式是在高性能计算相关课程,如并行计算、Web计算、计算机体系结构等,设置独立章节,从课程自身的视角,将机群系统作为一种应用运行支撑平台或一种并行计算机体系结构进行概要性介绍,课时约在2~6个学时[2-5]。然而,高性能机群计算在其近30年的发展中已形成较为完善的理论基础和实践方法。目前的教学内容和方式难以帮助学生形成系统而完整的机群计算知识体系。因此,面向计算机专业本科生开设独立的高性能机群计算课程势在必行。
  高性能机群计算是北京工业大学计算机学院面向高年级本科生新近开设的一门学科基础选修课程。该门课程以培养工程实践型机群系统管理人才为主体目标,结合计算机学院高年级本科生的知识背景,进行了教学内容和教材选择以及课程设计,力求使学生获取较为全面而系统的机群理论和实践知识。教学结果表明,该门课程的教学取得了较好的成效。
  1人才培养与教学目标
  机群系统管理人员属于工程实践型人才,其主要职责是机群系统的构建、管理和维护,对意外和系统故障进行实时响应和现场解决。因此,在知识结构上,系统管理员除了应具备扎实的机群基础理论知识外,这类人员还需要具备机群系统实际操作、管理等相关工程知识。
  北京工业大学高性能机群计算本科教学以培养机群系统管理人员为目标,紧扣管理员的知识结构需求,力图通过理论和实践两种教学形式相结合,使学生初步具备成为机群系统管理员的知识基础和技术素养。因此,我们确定了课程教学的3个具体目标.
  1) 使学生牢固掌握高性能机群计算的核心概念和基础理论,形成对机群系统层次化架构的基本认识。
  2) 使学生熟练掌握典型机群系统的构建和管理的主要方法,能够完成机群系统的构建和测试,并掌握机群系统日常监控的基本方法。
  3) 使学生掌握高性能机群知识获取的主要渠道,具备一定的独立获取和更新机群知识的能力,为日后的深入学习打好基础。
  2课程设计
  2.1教学内容选取
  “系统而全面”是该门课程教学内容选取上应贯彻的核心思想。
  图1是高性能机群系统的普适性架构图[6]。在该门课程教学内容选取上,系统性主要落实为以该层次化的架构图为主线,对架构图各层次的理论和实践知识进行讲解,最终使学生对一个完整机群系统的关键技术以及各技术间的层次关系有明晰的理解。
  教学内容选取的全面性体现为两点。第一,理论和实践知识并重。紧扣培养工程实践型机群系统管理人员的目标,该门课程在工程实践的讲解上,选取了目前在高性能计算领域占主流的Linux机群系统的构建和管理作为主要内容。第二,覆盖主要机群类型。针对两大机群类型,即科学计算型机群和事务处理型机群,分别讲述所涉及的关键理论和技术,以及各类Linux机群的构建和管理的技术要点。
  因此,我们设计该门课程的教学内容主要包括如下内容:1)机群概述:机群的基本概念、整体层次化架构和机群的主要应用场景与技术需求;2)机群节点构成:机群系统的计算、存储和网络资源的基础组成和主要互连拓扑结构;3)机群中间件(即可用性和单一系统映像基础设施)的关键技术:共性技术及各类机群的个性技术;4) 机群应用开发简介;5)典型的科学计算型Linux机群系统以及事务处理型Linux机群系统的构建和管理。
  在教材的选取上,目前尚缺乏理论和实践并重的高性能机群教材。我们选取了电子工业出版社的《高性能集群计算:结构与系统》、机械工业出版社的《微机集群组建、优化和管理》、以及中国水利水电出版社的《Linux企业集群——用商用硬件和免费软件构建高可用集群》。上述3本书的内容分别侧重于机群理论知识,科学计算型机群构建管理和事务处理型机群构建管理,是高性能机群计算领域较典型的教材,因此能够满足教学需求。
  2.2教学计划
  高性能机群计算课程的前导课程包括计算机体系结构、计算机操作系统以及计算机网络,后续课程包括并行计算、web计算等。因此,该门课程适合安排在大三下学期或大四上学期,面向高年级计算机专业本科生开设。高性能机群计算课程共有32学时,其中理论课时18学时,实验课时14学时。该课程的课时安排如表1所示。
  表1中1-4部分属于理论知识教学,5属于实践知识教学。6则属于学生自主开展的理论实践综合调研学习。本课程的课时安排是以人才培养为导向,存在如下特点:
  1) 理论与实践知识讲解的课时比例接近1比1。力求使学生在掌握基础理论的前提下,真正掌握成为机群系统管理员所需要的实践技术基础。
  2) 在机群理论知识讲解中,机群中间件层占用了50% 的课时,其原因是机群中间件层是机群系统的核心层,针对不同机群类型的技术差异主要体现在这个层次,其设计优劣直接影响机群系统的效率;且该层次包含的技术要点在其余高性能计算相关课程中未涉及。
  3) 机群节点构成与机群应用开发两部分,分别与前导课程(如计算机体系结构、计算机网络)和后续课程(如并行计算、Web计算)存在知识交集。可以在前导知识基础上扩展讲解,并为后续课程开一个好头。因此,安排课时相对较少。
  2.3教学方式与方法
  以培养工程实践性人才为导向,服务于3个具体教学目标,高性能机群计算课程教学中需要理论教学与实践教学两种方式并举,并采用多种教学方法,主要体现为理论教学中理论与实例相结合、以能力为本的层次化实验教学设计、以及通过分组专题调研和讨论培养学生再学习能力。
  2.3.1理论教学
  根据课前的学生知识背景调查,本科生群体对于高性能机群这个领域基本陌生,仅靠机械灌输理论概念很难让学生对所学知识记忆深刻。因此,在理论讲解时需要结合高性能机群经典案例,让学生对这些抽象的理论知识有感性认识。例如,在各层次理论讲解中,将经典的Beowulf机群以及先进的IBM BlueGen/L机群贯穿始终,让学生了解这些机群从节点构成、中间件设计到应用开发的各个层次,如何运用理论知识确定实际实现方案,并在实际应用中不断优化。
  此外,本课程采用多媒体教学。通过章节分明的ppt文字、生动的图片和动画演示,帮助学生掌握核心知识点、降低学习难度,提高教学的效率。在课堂讲解时启发式问答方式,对一些重要概念和关键技术设置问题,通过提问的方式,启发学生的思考,活跃课堂气氛,加深学生理解。
  2.3.2实践教学
  机群的实践知识多而繁杂,而学生的理解能力和实践能力各异,因此需要因材施教、区分对待。为此,我们设计了以能力为本的层次化实践教学,将实践教学分为3个层次。
  
  1) 基础层,设计一个基础机群系统的构建和维护。包括节点网络配置,Linux相关基础服务配置,以及面向科学计算型机群所必须的并行程序运行环境和作业管理系统构建和状态监控,面向事务处理型机群的高可用服务构建和监控等。所有学生必须熟练掌握并独立完成基础层的各项实验内容。
  2) 提高层,在基础机群系统的基础上,针对不同类型的机群系统的关键功能部件设计优化问题,如对机群作业调度策略进行改造。让学生通过C,Shell等语言对既有配置进行优化修改,并利用性能测试工具,跟踪机群应用性能,实现优化目标。通过这个层次的学习,让学生深刻体会关键功能部件对机群性能和效率的影响。
  3) 综合层,模拟实际项目案例,设计一个综合性的机群系统建设问题。如从一个企业机群构建需求出发,分析机群需具备的类型特征;指导学生完成从节点选型、网络拓扑设计、机群中间件选取和安装配置到应用部署的全过程;并利用模拟负载,指导学生发现机群实际运行中可能的性能瓶颈,利用其具备的机群优化知识,进行实际系统的优化。通过这个层次的学习,不仅培养学生对所学实践知识综合应用的能力,而且也为他们初步模拟了机群系统管理人员对系统问题实时响应和现场解决的场景。
  上述3个层次的实验内容中,基础层要求所有学生掌握,而提高层和综合应用层则鼓励学有余力和对机群知识兴趣浓厚的学生以分组的形式进行实践。
  2.3.3分组专题汇报与讨论
  高性能机群的知识多且广,32个课时仅能讲授机群系统最核心的概念和基础理论和技术。设置分组专题汇报和讨论是该门课程培养学生具备独立获取和更新机群知识能力的主要途径。在理论课程讲解中,教师根据机群系统层次结构中的关键技术点设置技术专题,并为学生提供主要的机群知识查询途径,包括文章、书籍和网站信息。学生自愿分组,选取感兴趣的专题进行技术调研,在调研中,根据文章的参考文献,网站的相关链接信息,扩大知识获取来源,并撰写技术调研报告进行调研汇报和讨论。通过专题调研和讨论,让学生亲身经历了一次完整的知识搜集、分析整理和总结的过程,较好地培养了他们再学习的能力。
  3考核方式及教学效果分析
  该门课程的考核包含3种形式:理论知识闭卷考试(40%)、实践考试(40%)以及专题技术报告(20%)。在实践考试环节,学生除了完成现场演示外,还需要提交实验报告,以文字、图表等形式完整描述操作过程和操作结果。专题技术报告则需进行汇报和答辩。2~3名学生自由组队,选择专题方向,最终由组代表以答辩的形式向教师和全体同学进行技术调研汇报。通过上述环节,培养学生笔头和口头表述能力以及团队协作精神。
  考核结束后,针对该门课程确定的教学目标,我们对教学效果进行了调查和考核结果统计分析,统计结果如表2。
  通过上表,我们可以得出以下结论。
  该门课程的教学基本达到了教学目标,学生在3个目标上达到合格的人数均超过90%。
  1) 学生在实践知识的掌握上成绩比较好,近84%的学生达到良好以上,即能够独立、完整地构建基础机群。学生调查也显示,学生在实践部分的兴趣最高。
  2) 在理论知识学习和掌握上略欠。学生调查结果也显示学生对理论的枯燥性有一定的抵触。因此,在今后的教学中,我们将加强学生对理论学习重要性的认识,加大理论与实例相结合的力度,力求获得更好的教学成效。
  4结论
  北京工业大学以培养工程实践性机群系统管理人员为目标,面向计算机专业本科生开设高性能机群计算课程。这门课程通过系统而全面的教学内容及教材选取,理论与实践相结合的教学方式以及多种形式的教学方法和考核手段,力求使学生具备成为机群系统管理人员的基本知识背景和技术素养。教学效果分析表明,这门课程的开设是培养机群技术人才、促进高性能机群产业发展的一次有益尝试。
  参考文献:
  [1] 樊建平. 高性能计算机的发展现状与趋势[J]. 计算