没有合适的资源?快使用搜索试试~ 我知道了~
绿色IT环境中的软件开发方法
绿色IT环境中的软件开发方法海莉·阿卡尔引用此版本:海莉·阿卡尔。绿色IT环境中的软件开发方法其他[cs.OH]。里昂大学,2017年。英语。NNT:2017LYSE1256。电话:01724069HAL ID:电话:01724069https://theses.hal.science/tel-01724069提交日期:2018年HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaireNNT订单号里昂大学博士论文(法语)操作范围l’Université博士学校ED 512里昂计算机科学与数学(InfoMaths)博士专业:计算机科学于2017年11月23日公开支持,作者:海莉·阿卡绿色IT环境中的软件开发方法在陪审团面前,陪审团由:Oussalah Mourad Chabane,南特大学教授报告员Pierson Jean-Marc,图卢兹Paul Sabatier大学教授3报告员Bellatreche Ladjel,普瓦捷ENSMA大学教授VARGAS-SOLAR Genoveva检查员,CNRS研究员,LIG格勒诺布尔检查员Ghodous Parisa,里昂大学大学教授1 Gelas Jean-Patrick博士生导师,ENS Lyon高级讲师Isiklar Alptekin Gülfem博士生联合导师,加拉塔萨雷大学副教授Lefèvre Laurent博士生联合导师,ENS Lyon2克劳德·伯纳德大学-里昂1大学校长弗雷德里克·弗勒里教授学术委员会主席M.哈姆达·本·哈迪德董事会副主席迪迪埃·雷维尔培训和大学生活委员会副主席M.Philippe Chevalier教授,研究委员会副主席M.法布里斯·瓦莱服务总经理Dominique Marchand健康成分里昂东医学院G.罗德教授里昂南部医学和医学院主任:C教授。布里隆牙科学院教授D. BOURGEOIS制药和生物科学研究所所长:C.VINCIGUERRA康复科学和技术研究所所长:M.X. 佩罗特人类生物学培训和研究中心主任:A-M教授。肖特科学和技术的组成部分和部门科学技术学院院长:M.F.来自马尔基生物系主任:M.教授F. 十一月化学生物化学系主任:C女士。费利克斯GEP部门主任:M.哈桑·哈木里计算机科学部主任:M.教授S. 阿库切数学系主任:M.G教授。托马诺夫机械系主任:M.教授H.本·哈迪德物理系主任:M.J-C PLENETUFR体育活动科学与技术主任:M. Y.VANPOULLE里昂宇宙科学天文台B. Guiderdoni Polytech Lyon总监:M.E.PERRIN教授电子物理化学研究生院院长:M.G. 皮格诺里昂大学理工学院1主任:M.C教授。维顿高等教育学院教授和教授A. MOUGNIOTTE金融科学和N. 莱博瓦3确认书如果没有许多人的帮助、指导和鼓励,这篇论文是不可能的首先,我要感谢我的导师Jean-Patrick Gelas副教授、Gülfem Isiklar Alptekin教授和ParisaGhodous教授的支持、建议和讨论。我还要感谢SOC团队的所有成员以及我在里昂大学的同事们的发言和讨论。我想感谢我的父母和兄弟以及我所有的好朋友的爱和支持。最后,我衷心感谢我的妻子法特玛和两个孩子易卜拉欣和穆罕默德,感谢他们在我的论文生涯中无限的耐心和支持。4内容。1导言151.1动机151.2研究问题171.3捐款181.4大纲182 术语定义:可持续发展和绿色212.1可持续212.1.1可持续信通技术2.1.2可持续软件252.2 绿色262.2.1绿色软件282.2.2绿色(含/不含软件)2.3 结论303 相关作品333.1硬件方法343.2 软件方法353.3 混合方法153.4 结论514 可持续和绿色软件工程过程534.1BUA方法论534.2 要求554.3 设计和实施574.4 测试594.5 使用614.6 维护634.7处置644.8 绿色分析664.9 结论665 通用功耗方法:GMTEEC 675.1业务层675.1.1热点675.1.2改进685.2 应用层695.2.1语言695.2.2图书馆715.3 接口层735.3.173号站台5.3.2操作系统755.4 硬件层7656内容5.4.1组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...765.4.2模拟。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...765.5结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ... ... ...766GMTEEC应用方法:TEEC796.1CPU。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...806.2内存。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ... ... ... ...826.1.1激活电源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...846.2.2预充电电源. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...856.2.3读取功率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...856.2.4写入权限。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...856.2.5总功率。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...856.3硬磁盘。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...866.3.1硬盘结构。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .866.3.2功率建模。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...876.4网络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...89所有组件的总功耗 . . . . . . . . . . . . . . . . . . . . ...896.6结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ... ... ...897实验和确认917.1斐波那契数列。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...917.2源代码调整. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...927.2.1强度降低 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...927.2.2消除常见子表达式。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...937.2.3运动代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...947.2.4展开循环 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...967.3多功能优化。 . . . . . . . . . . . . . . . . . . . . . . . . . . . ...967.3.1测试描述。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...977.3.2结果。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ... ...997.3.3验证。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...1007.4 TEEC与其他三种工具的比较 . . . . . . . . . . . . . . . . . . . . . . ...1017.4.1搜索整数。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...1027.4.2学生迷你项目。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...1045.7结论。... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...... ... ... ... ...1078结论1098.1吸取的教训。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...1098.2未来方向 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...1108.3出版物。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111图列表1.1用电量(TWh)[1] 162.1软件可持续发展Heart 232.2我们的可持续精加工软件262.3可持续和绿色软件272.4我们的绿色软件整理292.5绿色与软件312.6软件中的绿色313.1软件功耗方法分类..........................................................................................................................333.2研究类型和性质方面的气泡图中的系统图364.1BUA(事前使用后)方法554.2绿色分析标准的课程要求4.3绿色分析标准的设计和实施阶段4.4带有绿色分析标准的测试阶段614.5使用阶段和绿色分析标准634.6符合绿色分析标准的维护阶段644.7具有绿色分析标准的处置阶段665.1GMTEEC 685.22017年5月全球台式机操作系统市场份额[2] 755.3截至2017年5月全球移动和平板电脑操作系统市场份额[3] 755.4Google数据中心硬件子系统峰值功耗分布.........................................................................5.5按硬件子系统分布的每台服务器的平均功耗[5]5.6按组件划分的计算机功率分布[6] 776.1TEEC 796.2代码操作806.3CPU 81中的一个公共门6.4DDR3SDRAM 83的功能图6.5硬盘结构。............................................................................................................................. 876.6LB。........................................................................................................................................ 887.1使用TEEC计算斐波那契数列的功耗。............................................................................... 927.2用焦耳计计算斐波那契数列的功耗。................................................................................. 927.3强度降低未优化。................................................................................................................. 937.4强度降低已优化。..................................................................................................................937.5未优化的子表达式。......................................................................................................................947.6优化子表达式。..................................................................................................................... 947.7代码运动未优化。................................................................................................................. 957.8代码运动优化。..................................................................................................................... 957.9展开循环。............................................................................................................................. 9678人物列表7.10 未优化的功耗函数。.............................................................................................................. 997.11 未优化的函数能耗。............................................................................................................. 997.12 优化的功耗功能。.................................................................................................................1007.13 未优化的函数能耗。........................................................................................................... 1007.14 瓦苏普?亲。....................................................................................................................... 1017.15 使用Wattsup实现的未优化和优化函数功耗?PRO.1017.16 测量并用作参考的WattsUp-Pro功耗。............................................................................ 1027.17 TEEC功耗估算。................................................................................................................. 1027.18 IPG功耗估计。.....................................................................................................................1037.19 焦耳计功耗估计。................................................................................................................1037.20 测量并用作参考的WattsUp-Pro功耗。............................................................................ 1057.21 TEEC功耗估算。................................................................................................................. 1057.22 IPG功耗估计。.....................................................................................................................1057.23 焦耳计功耗估计。................................................................................................................1067.24 每个项目的性能和能源结果。........................................................................................... 106表列表2.1可持续软件定义262.2绿色软件的定义293.1功率计比较3.2使用硬件方法测量软能源消耗的研究软件353.3研究型刻面363.4使用CPU组件估计软件能耗的工具413.5使用内存组件估计软件能耗的工具3.6使用硬盘组件估计软件能耗的工具。473.7使用网络组件估计软件能耗的工具5.1语言类型715.2图书馆725.3虚拟机和物理机的优点和缺点756.1减少CPU功耗的可能性。..................................................................................................... 826.2数据表规格847.199的功能7.2时间执行函数。................................................................................................................... 1007.3能源消耗比较................................................................................................................................103910表列表摘要移动设备(智能手机、平板电脑、笔记本电脑等)的数量互联网用户持续增加。由于云计算、互联网和物联网(IoT)提供的可访问性因此,ICT(信息和通信技术)占全球温室气体排放量的2%左右,相当于航空业的排放量。根据政府间气候变化专门委员会(气专委)最近的报告,信息和通信技术造成的二氧化碳排放量正在急剧增加。无论如何,信息和通信技术在解决其他部门的复杂问题方面,可以大大和容易地参与减少剩余的98%的全球二氧化碳排放量中的相当大一部分。软件的使用涉及对能量消耗负有物理责任的硬件操作因此,软件间接地参与了能源消耗。因此,我们需要在保持软件相同功能的同时降低软件能耗,以构建可持续和绿色软件。首先,在本论文中,我们定义了软件开发领域中的可持续性和绿色。要构建软件产品,我们需要遵循软件工程流程。Hence,我们定义并描述了在此过程的每个步骤之后要满足的可持续和绿色标准,以便建立可持续和绿色软件工程过程。然后,我们将重点放在软件能耗估算上。许多研究工作试图提出各种工具来估计由于软件造成的能源消耗,以减少汽车的良好足迹。不幸的是,在大多数情况下,这些研究只考虑了CPU,而忽略了所有其他组件。需要通过考虑在应用程序运行时可能消耗能量的更多组件来改进现有的功耗方法编写可持续、高效和绿色的软件需要了解计算机程序的功耗行为。其中一个好处是,开发人员通过改进其源代码实现,将优化软件功能的使用。此外,缺乏分析工具来动态监控多个组件的源因此,我们提出了GMTEEC(估算能耗工具的通用方法),它由四层组成,帮助开发人员构建估算能耗的软件工具。Hence在我们的工作中,根据GMTEEC的层次,我们开发了TEEC(估计能耗的工具),该工具基于为每个组件(CPU、内存、硬盘、网络)建立的数学公式,以估计总软件能耗。此外,我们在TEEC中增加了动态定位热点的能力,这些热点是消耗大量能源的源代码部分,以帮助和指导开发人员优化其源代码并构建高效、可持续和绿色的软件。我们进行了各种实验,以验证可持续产品的绿色软件工程流程和TEEC。结果表明,以有限的成本节省大量的能源和时间,并对环境产生重大的积极影响是可能的。1112表列表摘要移动设备(智能手机、平板电脑、笔记本电脑等)的数量国际航线不断增加。由于云计算、互联网和物联网(IoT)的可访问性,用户正在使用越来越多的软件应用程序,这些应用程序对温室气体排放的影响越来越大。因此,ICT(信息和通信技术)约占全球温室气体排放量的2%,相当于航空业的排放量根据政府间气候变化专门委员会(IPCC)最近的报告,信息和然而,通过解决其他部门的复杂问题,信息和通信技术可以在很大程度上和很容易地帮助减少全球剩余的98%的二氧化碳排放量中的很大L’utilisation因此,软件间接地涉及到能量的消耗因此,我们需要降低软件的功耗,同时保持软件的相同功能,以创建可首先,在本论文中,我们定义了软件领域中的"可持续和绿色"术语,以便创建符合这些术语标准的软件。为了创建软件产品,我们必须遵循软件工程过程。因此,我们描述了在该过程的每个阶段之后要满足的可持续和绿色标准,以建立可持续和绿色的特别是,我们专注于估计软件的功耗许多研究试图提出各种工具来估计由于软件而产生的能量消耗,在很长一段时间里,所提供的解决方案只关注硬件设计,但近年来,软件方面也变得重要起来。不幸的是,这些研究在大多数情况下只考虑CPU,而忽略了所有其他组件。现有的功耗模型需要通过考虑在应用程序运行期间可能消耗功率的更多组件来L’écriture d’un logiciel 此外,还缺乏用于动态监视多个组件的源代码的功耗的因此,我们提出了GMTEEC(估计能耗的通用工具方法因此,在我们的工作中,通过尊重GMTEEC的层,我们创建了TEEC(估计能耗的工具),它基于为可能消耗能量的每个组件(CPU、内存、硬盘、网络)建立此外,我们还在TEEC中添加了动态定位热点的功能,这些热点是源代码中消耗最多1314表列表并创建高效、可持续和绿色软件我们进行了各种实验,以验证可持续和绿色软件工程过程的准确性和质量以及TEEC的准确性结果表明,有可能以有限的成本降低能耗并提高性能,同时对环境产生第一章简介“People "史蒂夫乔布斯1.1动机专家们普遍认为,人类活动是地球大气温度升高的原因,主要是由于能源生产产生的温室气体。因此,联合国气候变化大会(COP21)重申了到本世纪末将气温上升控制在2 ° C以下的目标[7]。在过去的几年里,信息和通信技术(ICT)发展非常迅速,其目标是提供新的解决方案,使人们的生活更轻松事实上,互联网用户和网站的数量,发送电子邮件,谷歌搜索,写博客文章,发送推文,观看YouTube视频,上传到Instagram,Facebook,Google+,Twitter,Linkedin和Pinterest的照片-活跃用户,Skype呼叫,网站被黑客攻击,电脑,智能手机和平板电脑销售,互联网流量每天都在增长。因此,信通技术造成的能源消耗、用电量和温室气体排放量也在急剧增加。亨斯和ICT的二氧化碳排放量约占全球二氧化碳排放量的2%[8],相当于航空业的排放量。此外,如图1.1所示,随着移动设备的大幅增长和网络的扩展,2007年至2020年间ICT部门的电力消费将增长约60% [1]。无论如何,信息和通信技术正在有效地减少全球碳足迹,解决若干活动部门的因此,信息和通信技术可以大大和容易地参与减少其他部门剩余的98%的全球二氧化碳排放量中的相当大一GeSI预计到2020年,全球温室气体排放量将减少16.5%[9],节省的能源和燃料总额将达到1.9万亿美元,温室气体的二氧化碳当量(GtCO2e)将减少9.1千兆吨。这相当于同期信息和通信技术部门排放量的七倍多Hence认为,有必要继续这些改进,以保持我们ICT产品的相同功能,同时减少这些产品的能源消耗,以获得可持续和绿色的产品,这些产品将对环境友好。为了在几个领域节约能源,已经进行了许多改进特别是,在ICT硬件方面,制造商的改进是巨大的,改进的极限即将达到。实际上,设备中的物理组件正在被消耗15
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功