2

有许多在线评判网站可以通过将其输出与正确答案进行比较来验证您的程序。更重要的是,他们还会检查运行时间,以确保您的程序运行时间不超过最大限制。

那么我的问题来了,有的在线评判网站同时运行多个测试程序,它们是如何实现性能隔离的,即如何保证在高负载环境下运行的用户程序在同一个测试程序中完成?时间,就像它在空闲环境中运行时一样?

4

2 回答 2

3

操作系统与现实世界的“挂钟”时间分开跟踪 CPU 时间。在进行基准测试时,只看一种或另一种时间是很常见的。CPU 或文件 I/O 密集型任务可以仅用 CPU 时间来衡量。需要外部资源的任务(例如查询远程数据库)最好用挂钟时间来衡量,因为您无权访问远程资源上的 CPU 时间。

如果一个评审站点只是比较不同测试的 CPU 时间,该站点可以同时运行多个测试。另一方面,如果挂钟时间很重要,那么站点必须使用独立的硬件或作业队列,以确保一个测试在下一个开始之前完成。

于 2010-01-02T05:32:55.857 回答
0

由于计算机语言基准游戏测量 CPU 时间和运行时间,这些测量是在空闲环境中按顺序进行的

于 2010-01-03T16:43:47.293 回答