1背景
计算机网络和计算机系统目前已经成为现代信息社会最重要的基础设施之一,其应用遍布社会的各个领域,成为国家发展和社会进步的基本需求,是知识经济的基本载体和支撑环境。性能评价是计算机网络和计算机系统研究与应用的重要理论基础和支撑技术,是通信和计算机科学领域的重要研究方向,也是一门理论与实践紧密相连、内容丰富、体系完整的学科。许多IEEE的权威会刊也都有专门的性能评价专栏,还有许多关于性能评价的国际学术年会。此外,性能评价也是国外计算机、通信、信息科学等专业大学高年级学生和研究生的必修课程之一。
长期以来,虽然学习数学系开设的纯数学有利于夯实研究生的基础理论,但要在计算机和网络系统建模分析的具体研究中应用随机观念解决实际问题,偏重理论体系完备性和严密性的纯数学略显抽象,不容易被深刻理解,进而阻碍学生在实际系统与抽象的理论方法之间建立自然联系。为此清华大学计算机科学与技术系于2000年开设“计算机网络与计算机系统的性能评价”课程,任课教师为林闯教授,笔者于2012年加入课程建设队伍,开始承担部分教学任务;2014年独立承担课程教学。十多年来,课程在林闯教授及其教学团队的努力下,多次荣获清华大学研究生精品课程。
2课程定位
“计算机网络与计算机系统的性能评价”属于专业基础理论课程,强调用工程数学解决实际问题,是基础理论课和学科专业课之间的桥梁。课程教学强调培养研究生对计算机网络和计算机系统的性能模型方法和性能分析的直观理解,熟悉基本思路,通晓性能建模与分析的一般方法,熟练并尽可能创造性地应用随机过程、排队论、随机Petri网等方法开展计算机网络与系统性能评价的相关研究。课程着重培养研究生应用随机概念分析和评价计算机系统性能的基本研究能力。此外,课程建设也致力于以学生能力培养为核心,注重理论深度,体现研究型教学的特色。
3课程建设
3.1用“领会方法精髓”的思想指导教学
课程内容按照系统性能评价的模型技术与方法分为3个部分:第一部分讲解基本概念和基础理论,包括随机变量及期望的相关定理、马尔可夫过程和更新过程等随机过程以及随机稳定性分析等。第二部分是排队论,包括各种典型单节点排队模型以及乘积解/非乘积解排队网络。第三部分是随机Petri网与性能评价,主要内容有Petri网和各种随机Petri网及其在系统性能评价中的应用。我们在教学实践中强调数学基础理论中的相关概念、定义和定理等在描述实际物理系统(如计算机和计算机网络系统)时的映射关系,注意用简单的模型和示例讲述基础理论在描述和刻画实际系统时的本质。课程讲授过程中采用幻灯讲义,但对较难的数学推导和分析内容则采用板书方式,同时在讲解详细的分析推导过程之前增加了轮廓性的介绍,之后注意总结主要结论的本质,并结合实际系统阐述理论所揭示的物理意义,适当增加应用举例,力图将抽象的数学理论讲解得直观而易理解,启发同学思考和领会方法的精髓。如讲授离散时间马尔可夫链模型时,首先剖析单机双核CPU共享内存系统的建模,然后扩展到多机多核计算机系统的建模,使同学们由浅入深、循序渐进地理解并掌握应用离散时间马尔可夫链建立计算机系统分析模型的关键——结合实际系统的工作过程,分析、抽象和定义恰当的系统状态,进而确定状态之间的转移概率。
3.2将科研成果融入教学
教学与科研从来都是相辅相成的。我们精选了授课教师近年的研究成果,如网络协议的性能评价、计算机网络的性能模型与性能评价、多服务器多队列系统的模型与性能评价等。通过对这些实例的分析,让学生了解如何对各种计算机和网络系统进行模型化描述及性能分析。例如,笔者在讲授排队网络模型的基础理论知识时,轮廓性地介绍了大延时带宽积环境下最优拥塞窗口大小的理论分析工作,在加深同学们对闭环排队网络乘积解理论知识理解的同时,也使大家对一个优秀研究成果与扎实的基础理论知识之间的关系有了生动且深刻的认识。同时,我们也穿插介绍本领域历史上有影响力的研究成果和最新的研究进展,目的在于通过具体事例提高研究生对好的研究成果的鉴赏力。如在讲授到相关知识点和基础理论时,简要介绍计算机性能评价领域获得ACM SIGMETRICS终生成就奖的学者及其获奖工作的主要贡献等。
3.3以热点问题驱动教学
课程主要采用教师课堂授课的方式。此外,还根据教学内容需要,分配一定的课堂时间,安排利用本课程方法在性能评价方面取得成果的同学在课堂上分享成功经验,具体讲解和分析如何将相关理论应用到研究实践中,更直接地让学生体会到课堂学习内容的使用方法和技巧,有利于启发和开阔思路,加深对所学内容的理解。
在教学过程中,笔者会适时结合最新的研究热点,推荐一些带有挑战性的研究课题(如MapReduce和Spark等新的计算模式与系统、云存储系统和分布式机器学习系统的建模分析等),供学有余力的同学凭热情和兴趣选择研究,并在学生的研究过程中尽可能地给予指导和建议。虽然不是所有选择该项任务的同学最终都会有相应的研究成果输出,但此过程对加深课堂内容的理解无疑是有帮助的。
通常,在期末教学安排中,为说明本课程内容的可扩展性,开阔同学们的思路,也安排讲授部分课程内容在新的热点领域的研究和应用进展,以启发同学们在未来的研究工作中有意识地应用课程所学内容提高自己研究工作的水平。
3.4灵活开放的考核方式
采用形式灵活多样的考核方式,考试题目从实际中来,开放性强,答案形式多样,鼓励同学多角度思维。
3.5教材与讲义建设
课程教材选用主讲教师林闯教授编写的《计算机网络和计算机系统的性能评价》(清华大学出版社出版),此教材是国内第一本有关多种计算机网络系统性能评价理论基础的教材,在教学过程中广泛收集学生反馈和意见,为再版修正做充分准备。目前,该教材现已有超过50所大学用作信息专业研究生必读教材或参考书,在CNKI数据库中被引用已达500余次。课程主要参考书之一的《随机Petri网和系统性能评价》(清华大学出版社出版)2005年出版第2版,在CNKI中的引用达千余次。
同时,笔者也注意结合经典教材和最新的研究成果,不断完善课程内容的系统性和时效性。例如,在讲义中引入R.Nelson经典教材《TheMathematics of Computer Performance Modeling》中介绍随机数学的框架体系,使同学更深刻地理解随机数学如何描述客观物理世界的系统性,拓展了本科所学概率与数理统计知识的外延,加深了对随机概念的更为全面的理解与认识。笔者在引入飘逸稳定性分析时,结合李雅普诺夫随机稳定性分析与优化在计算机网络中的应用等最新研究成果,使同学了解和掌握了一种常用的研究分析方法。上述举措为下一版教材的更新与修订,准备了充分的素材。
3.6师资队伍建设
课程的大部分内容涉及随机过程,是一般计算机专业师生较为生僻的数学基础知识。教学组注重教师队伍建设,通过主讲教师林闯教授的示范和言传身教,笔者已经逐渐熟悉了课程的基本内容,可以独立承担全部教学内容,并能结合实际研究进展,不断完善课程体系,扩展针对性和时效性强的教学内容。
4主要特色与教学成果
本课程旨在为计算机系统结构及相关方向的研究生提供一种基于随机模型的方法认识和理解系统性能的工程数学工具。强调在计算机系统和计算机网络系统的背景下,应用随机概念,量化分析和评价系统及其组成系统的单元组件的性能。
基于模型的系统性能分析主要研究应用数学理论与方法来描述系统性能参数与负载等状态之间的函数关系,方便全面而深刻地认识影响系统关键性能参数的环节或因素,有事半功倍之效。另一方面,为数学描述与计算的方便,系统建模中往往要进行必要的简化与假设,与纯粹的数学研究不同,做合理假设是本课程强调工程数学环节中一项需要重点训练的基本能力。
计算机与网络系统已经逐渐演化成为人造的复杂巨系统,其庞杂性和复杂性使系统建模与性能评价问题变得越来越复杂,并越来越引起人们的重视。提供有效的数学理论工具、直观的模型描述方法和有效的模型分析方法以及实用的辅助分析软件,是系统性能评价所面临的迫切需要解决的问题,这也是该研究领域旗舰会议ACMSIGMETRIC一直持续关注的主要问题。本课程在讲授的系统性能评价基本概念和基础方法同时,不断引进相对较新且成熟的研究成果,如随机稳定性分析和网络演算等,拓展选课研究生的视野,使他们及早了解计算机与网络系统性能评价领域新近有影响力的研究成果。
在介绍数学概念时强调直观性和物理背景,注意阐明定理和结论的意义和作用,强调方法和模型在实际计算机网络和计算机系统中的应用,课堂讲授注重讲解思路,剖析出每—个模型的本质,将数学理论推导化繁为简,注重推导的逻辑性讲解。对于每一种形式定义和推导,都给出模型例子进行引导。强调对于研究对象物理属性的观察与理解,重视合理假设与概括的工程数学思想。
通过本课程学习,在授课教师指导下,部分同学选择性地完成了与本课程内容相关的带有研究性质的开放性课程作业,做出了不错的研究成果,完成多篇学术论文,分别发表在领域权威会议和期刊上,如IEEE INFOCOM、IWQoS、ICDCS、《IEEE Trans.on Computers》《IEEETrans.on Parallel and Distributed System》等。
课程主讲教师林闯教授获得了2008年北京市教育教学成果(高等教育)一等奖。
4学生评价
课程建设和教学实践得到了选课学生的鼓励与肯定。在清华大学网络学堂的教学评估中学生给出了正面的反馈,如:“高校唯一的一门计算机性能评价方面的课程。涵盖的内容较广泛,难度较大。”“全国仅此一家的课程,但是确非常实用,使用范围也很广。”“一种解决问题方法的传授,提供一种用于解决多种现实问题的思路。”“性能评价这门课给我现在的研究项目提供了强有力的理论支持,提高了我们项目的研究深度。”“授课思路清晰,重点突出,讲课由浅入深,热情投入。”“该课程开拓了我的视野,着实使我从中获益良多,对相关知识的探研产生了更加浓厚的兴趣。”
同时,也对课程的完善给出了建设性的意见和建议,如“建议以数学建模为先导课程,将该门课程由目前的1学期改为1学年”。
5下一步课程建设规划
在今后本课程的教学中,除继承已形成的特色和风格,还需在以下两个方面进行加强和完善:
1)改善教学方式,注重“学以致用”的能力培养。
世界一流大学,如美国CMU、UCB、MIT和UCLA,加拿大University of Waterloo,以及瑞士EPFL(瑞士洛桑联邦理工学院)的计算机系都开设内容相似的课程,所培养的研究生每年在ACM SIGMETRIC等领域顶级会议上有出色研究成果,间接说明他们灵活应用所学方法的能力较我们的学生强。通过与学生有限的交流,笔者初步反思:我们的研究生学习基本概念和知识的能力很强,逻辑分析与推理能力也很强,突出表现在做题和考试中,但创造性应用所学方法解决实际工程问题的能力有所欠缺。对工程数学的特点认识不足,缺乏充分认识研究对象的耐性,试图一味通过逻辑推理建立复杂系统的性能模型。
计划在未来教学中采取一定措施,逐渐弥补这一差距,例如,选择代表性研究成果进行重点分析,强调可能的一般性误区;邀请富有研究经验与体会的高年级研究生讲解他们的研究成果,强化教学的直接体会与认识;结合热点研究背景,自愿形成研究小组,指导具体问题的研究,使同学有更为直接的经验。争取通过一段时间的教学实践,摸索和总结出进一步提高和完善本课程教学质量与效果的方法。
2)完善和优化教学内容。
调研世界名校相似课程的教学内容,例如调研UCB电子与计算机科学系Jean Walrand教授主讲的课程“Random Processes in Systems”和EPFL的Jean-Yves Le Boudec教授主讲的课程“PerformanceEvaluation of Computer and Communication Systems”.结合其研究生成果,找到多个切入点,结合我们的教学实践,进一步充实完善教学内容,加强教材涵盖理论的深度与广度。