Mercurial > ~astiob > upreckon > hgweb
comparison unix.py @ 123:90c002c960cb
Fixed CPU time display on UNIX
Previously, the total CPU time spent by the testee on all
test cases up to and including the current one was displayed.
author | Oleg Oshmyan <chortos@inbox.lv> |
---|---|
date | Sun, 24 Apr 2011 19:28:40 +0100 |
parents | 0b265fe9c81f |
children | 19c42a3cd962 |
comparison
equal
deleted
inserted
replaced
122:d6fd880207cb | 123:90c002c960cb |
---|---|
208 del bury_child.case | 208 del bury_child.case |
209 new_rusage = getrusage(RUSAGE_CHILDREN) | 209 new_rusage = getrusage(RUSAGE_CHILDREN) |
210 if (case.maxwalltime and | 210 if (case.maxwalltime and |
211 case.time_stopped - case.time_started > case.maxwalltime): | 211 case.time_stopped - case.time_started > case.maxwalltime): |
212 raise testcases.WallTimeLimitExceeded | 212 raise testcases.WallTimeLimitExceeded |
213 if new_rusage and (case.maxcputime or not case.maxwalltime): | 213 if new_rusage: |
214 case.time_started = cpustart | 214 time_started = old_rusage.ru_utime + old_rusage.ru_stime + cpustart |
215 case.time_stopped = new_rusage.ru_utime + new_rusage.ru_stime | 215 time_stopped = new_rusage.ru_utime + new_rusage.ru_stime |
216 case.time_limit_string = case.cpu_time_limit_string | 216 if case.maxcputime or not case.maxwalltime: |
217 if case.maxcputime and new_rusage: | 217 case.time_started = time_started |
218 oldtime = old_rusage.ru_utime + old_rusage.ru_stime | 218 case.time_stopped = time_stopped |
219 newtime = new_rusage.ru_utime + new_rusage.ru_stime | 219 case.time_limit_string = case.cpu_time_limit_string |
220 if newtime - oldtime - cpustart > case.maxcputime: | 220 if (case.maxcputime and |
221 raise testcases.CPUTimeLimitExceeded | 221 time_stopped - time_started > case.maxcputime): |
222 raise testcases.CPUTimeLimitExceeded | |
222 if case.maxmemory: | 223 if case.maxmemory: |
223 if sys.platform != 'darwin': | 224 if sys.platform != 'darwin': |
224 maxrss = case.maxmemory * 1024 | 225 maxrss = case.maxmemory * 1024 |
225 else: | 226 else: |
226 maxrss = case.maxmemory * 1048576 | 227 maxrss = case.maxmemory * 1048576 |