1引言
由于计算机系统在运行的过程中,往往呈现不同运行方式,因此在制造、设计中会浪费大量人力、资金。为了使计算机软件在开发利用中能够满足人们在生活与工作中的需要,必须加大对计算机体系结构软件模拟技术的开发和利用,其不仅提高了计算机软件运行的性能,也加快了我国在软件上的开发。
2计算机体系结构软件模拟技术的概述
2.1计算机体系结构软件模拟技术
计算机体系结构软件模拟技术,主要是运用计算机的软件技术对计算机系统中硬件在性能与功能上实现模拟的技术过程。在设计计算机系统与制造计算机系统中,必须要根据计算机体系结构软模拟技术实现设计方式的验证过程与模拟过程。总之,计算机体系结构软件模拟已经成为当前开发软件与降低效率周期的主要软件技术。当前,计算机体系结构软件模拟技术已经逐渐得到普及。依据相关的数据可以看出,当前在计算机的处理器设计和开发的过程中,软件模拟技术的性能评估与开发上所花费的经费最多。就理论角度而言,软件开发成本比硬件低,周期较短,更为灵活方便,因而迅速受到欢迎。但是在计算机体系结构软件模拟的开发过程中,技术性要求比较强,必然面临许多技术难题,这都阻碍了其进一步发展。
2.2计算机体系结构软件模拟技术
分类受到处理器本身的影响,计算机体系结构软件模拟技术可分为两种类型:①单个处理器系统模拟;②多处理器系统模拟。如果按照模拟目标划分,则可以讲该模拟技术划分为4种,即性能模拟、功能模拟、发热模拟以及能耗模拟。
2.2.1跟踪驱动模拟技术
该技术属于整个模拟技术形态中的一种类型,主要是在页面置换算法当中被应用。通过高速管理算法的作用,完成并实现高效的跟踪驱动模块。一旦指令传输成功,则将所得到的信息处理作为模拟处理器执行输入操作,实现对性能与功能层面的模拟。该模拟技术调试过程相对便捷,并且模拟技术的掌握与理解能够发挥出良好的效果。当然,为了最大限度上的提升结构软件模拟方面的性能问题,可在适当的场景下对模拟器开展模拟工作,具体见图1所示。
2.2.2执行驱动模拟技术
在应用执行驱动模拟技术的过程中,人是其运行操作的主体。在模拟器中,指令的输入都是通过技术人员的实际操作来实现的,而并不需要通过对所输入的数据信息进行跟踪监督。因此,从总体上来说,模拟器的数量主要包括的是程序静态指令程序,静态指令程序与动态指令程序在数目方面并不存在正比关系。
3软件模拟技术开发中存在的问题
3.1开发的难度大
由于计算机系统结构较为复杂,要将其中的晶体管、电路均被模拟并不现实,因此会采取按照一定层次将其结构体系简化的办法。但是,事实上经过简化的系统仍然较为复杂,不利于模拟软件的开发。对此,有些编程人员运用C语言功能,开发出了相应的模拟软件,但是,这种软件却非常容易发生使用失误,并且消耗很多能源。
3.2模拟器设计时间长
模拟器是计算机主机上的重要运行程序,在模拟运行系统运作过程的时候,通常利用在时钟级别上记录处理器运行状态。该状态包含有大量数据,所以严重影响了模拟运行速度。为了测试其运行性能,需要安装相应测试标准程序,而这些程序通常耗费大量时间,极大降低了测试的效率。
3.3模拟器运行结果
亟待提高模拟器的开发过程包括以下方面:①在目标体系的构建阶段,往往会出现分析结果不准确等问题;②在模拟器结构的设计阶段,虽然基本能够正确理解结构体系目标,但仍然存在细节性的错误;③在实现模拟器的阶段,模拟器在运行中难免会出现一些运行错误,影响模拟结果。
4改善计算机体系结构软件模拟技术的措施
4.1减少模拟器工作负荷
(1)减少测试程序的输入参数。对于一个标准的性能测试环境,通常具备多套固定的测试数集。例如,测试输入参数集、训练输入参数集和参考输入参数集等。对于不同的数集分析可以发现,其中所表现出的参数集负荷较大,性能结果也更加精准。当然,这一要求,充分克服了传统结构软件模拟技术数据缺乏准确的弊端。
(2)测试程序的集中测试。在整个测试程序包当中,涵盖的测试程序较多。例如:在SPECCPU2000当中的证书测试程序以及点数测试程序多达20余个。由于上述涉及到的各项程序当中存在一定的相关性,需要结合性能条件进行分析,最终选取具有代表性的程序因素,对其进行集中测试。
(3)选择测试程序中的一部分进行指令处理。该方法主要是对部分指令进行模拟,缩短模拟时间,优化模拟环境。在这种方式的基础之上,细分方式主要有两种形态:①截取一段连续的指令;②通过抽样统计的方法选取指令。但无论基于哪种形态,都能够减少模拟器的工作负荷,提高模拟数据准确性。
4.2减少模拟运行指令数量
4.2.1直接选择指令
即在所有指令当中进行随意选取,然后设置于模拟器中。使用这种方式选用的指令,当做执行阶段的模拟器最终结果。这种选择指令的方式是,首先选择X百万条指令,再选择Z百万条指令,然后以这两种结果当做模拟结果。该方式具有的特征在于执行指令后,模拟器中将失去对应信息,即不会自动保存,因而会直接影响指令的后续处理效果。对此,研究人员提出另一种选择指令的方式,即在选择X百万条指令后,首先选择Y百万条指令进行预热执行,最后选择Z百万条指令,以获取满意的执行效果。在采用了该方式后,模拟效果得到了有效提高,但仍具有一定的局限性,使软件模拟技术不适用于大模拟环境。
4.2.2运用统计学方式选取指令
该方式的特点主要在于所选指令具有良好的代表性。当前的计算机系统为了提高模拟的实际效果,往往会采用的指令选择方式包括以下三种:①代表性采样,例如采用Simpoint模拟,首先分析测试程序,然后选择一组模拟点,对其分析结果进行分配权重,获取准确的模拟结果;②周期采样,是首先启动测试程序,在动态的情况下,以周期为规律选择指令;③随机采样,即是在所有的指令中,通过抽样的方式随机抽取指令,以达到模拟效果。
4.3运用任务映射
并行模拟器的应用,在处理环境中的映射则主要是子任务到并行进程的指定。在当前并行环境中,涉及到以及包含的映射策略较多,通常可以具体分为两个大类。①策略能够得到最优解;②能够得到近似值。为了模拟过程获得最优解,需要基于教学规划、图轮以及排队论的基础之上,得出数值,其中的缺点主要是求解过程耗时严重。当然,为了缓解耗时与数据准确度之间的矛盾问题,学术界同样给出了两种解决方案,分别为最优算法以及启发式方法。截至目前为止,并行模拟环境下的映射方式相对简单,多数支持块映射以及循环映射两种方式,用户无法对其进行准确的映射分析与评价。
4.4运用并行模拟器
并行模拟器作为一种新型的模拟形态,所表现出的效果以及运行状态存在较大的差异。在并行模拟的环境中,主要是将其更好地应用在并行的体系结构模拟中。这样处理的根本原因则是强调系统本身的复杂性以及部件众多因素,传统的模拟方式不需要并行模拟器进行模拟。而相对于目标模拟多种层次的并行性要素的影响,需要强调内在的规模及多样性要求,探索并行模拟器,进而优化模式过程,在降低成本的同时,使得效率得到提升。
4.5采用仿真和新型模拟技术
当前发展较为突出的新型模拟技术有以下两种:①仿真模拟技术,其模拟过程主要是借助计算机软件或硬件,模拟计算机中的某一种模型,在这个过程中,主要的目的在于利用在某一个机体上所了解到的另一台计算机的已知功能,使最这两台计算机能够保持结构的一致性;②计算机模型的模拟实验,则是借助计算机软硬件,简要模拟计算过程,该模拟方法通常用于开发计算机新性能和功能。这两者都较为重视计算过程的研究,而不太重视结果。所以,要想更好的研究计算机体系结构软件技术应该不断的研发新型的模拟技术,而不是仅仅依靠这两种代表性技术。
5结语
我国已经步入了信息化和数字化的时代,加快对于计算机体系结构软件的模拟技术的开发和运用,逐步成为了开发新的软件的必然发展趋势。计算机应用功能的开发和完善,需要专业技术人员选用正确有效的方式,应对开发问题,逐步研发出实用价值较高的计算机应用软件。