diff options
| author | Mac Mollison <mollison@cs.unc.edu> | 2010-03-26 13:51:39 -0400 |
|---|---|---|
| committer | Mac Mollison <mollison@cs.unc.edu> | 2010-03-26 13:51:39 -0400 |
| commit | 58d168e52c3de9f3a53d0aea802be5cab492ade6 (patch) | |
| tree | 4c4656a6b876f4db0b850ee70273a4c0aa4125b7 | |
| parent | a7bf26bd5597661b51c42e34ad2fad4c315b8aed (diff) | |
Add inversion IDs and print them
Makes it easier to find inversion records in output
| -rw-r--r-- | unit_trace/gedf_test.py | 6 | ||||
| -rw-r--r-- | unit_trace/stdout_printer.py | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/unit_trace/gedf_test.py b/unit_trace/gedf_test.py index 41bab96..3f4e150 100644 --- a/unit_trace/gedf_test.py +++ b/unit_trace/gedf_test.py | |||
| @@ -88,20 +88,26 @@ class Job(object): | |||
| 88 | self.is_complete = False | 88 | self.is_complete = False |
| 89 | self.inversion_start = None | 89 | self.inversion_start = None |
| 90 | self.inversion_end = None | 90 | self.inversion_end = None |
| 91 | self.inversion_start_id = None | ||
| 91 | def __str__(self): | 92 | def __str__(self): |
| 92 | return "(%d.%d:%d)" % (self.pid,self.job,self.deadline) | 93 | return "(%d.%d:%d)" % (self.pid,self.job,self.deadline) |
| 93 | 94 | ||
| 94 | # G-EDF errors: the start or end of an inversion | 95 | # G-EDF errors: the start or end of an inversion |
| 95 | class Error(object): | 96 | class Error(object): |
| 97 | id = 0 | ||
| 96 | def __init__(self, job, eligible, on_cpu): | 98 | def __init__(self, job, eligible, on_cpu): |
| 99 | Error.id += 1 | ||
| 100 | self.id = Error.id | ||
| 97 | self.job = copy.copy(job) | 101 | self.job = copy.copy(job) |
| 98 | self.eligible = copy.copy(eligible) | 102 | self.eligible = copy.copy(eligible) |
| 99 | self.on_cpu = copy.copy(on_cpu) | 103 | self.on_cpu = copy.copy(on_cpu) |
| 100 | self.record_type = 'error' | 104 | self.record_type = 'error' |
| 101 | if job.inversion_end is None: | 105 | if job.inversion_end is None: |
| 102 | self.type_name = 'inversion_start' | 106 | self.type_name = 'inversion_start' |
| 107 | job.inversion_start_id = self.id | ||
| 103 | else: | 108 | else: |
| 104 | self.type_name = 'inversion_end' | 109 | self.type_name = 'inversion_end' |
| 110 | self.inversion_start_id = job.inversion_start_id | ||
| 105 | 111 | ||
| 106 | # Returns the position of a Job in a list, or None | 112 | # Returns the position of a Job in a list, or None |
| 107 | def _find_job(record,list): | 113 | def _find_job(record,list): |
diff --git a/unit_trace/stdout_printer.py b/unit_trace/stdout_printer.py index d242bb6..4fea95a 100644 --- a/unit_trace/stdout_printer.py +++ b/unit_trace/stdout_printer.py | |||
| @@ -27,12 +27,13 @@ def stdout_printer(stream): | |||
| 27 | ############################################################################### | 27 | ############################################################################### |
| 28 | 28 | ||
| 29 | def _print_event(record): | 29 | def _print_event(record): |
| 30 | print "ID: %d" % (record.id) | 30 | print "Event ID: %d" % (record.id) |
| 31 | print "Job: %d.%d" % (record.pid,record.job) | 31 | print "Job: %d.%d" % (record.pid,record.job) |
| 32 | print "Type: %s" % (record.type_name) | 32 | print "Type: %s" % (record.type_name) |
| 33 | print "Time: %d" % (record.when) | 33 | print "Time: %d" % (record.when) |
| 34 | 34 | ||
| 35 | def _print_inversion_start(record): | 35 | def _print_inversion_start(record): |
| 36 | print "Inversion Record IDs: (%d, U)" % (record.id) | ||
| 36 | print "Type: %s" % ("Inversion start") | 37 | print "Type: %s" % ("Inversion start") |
| 37 | print "Time: %d" % (record.job.inversion_start) | 38 | print "Time: %d" % (record.job.inversion_start) |
| 38 | print "Job: %d.%d" % (record.job.pid,record.job.job) | 39 | print "Job: %d.%d" % (record.job.pid,record.job.job) |
| @@ -47,6 +48,7 @@ def _print_inversion_start(record): | |||
| 47 | print #newline | 48 | print #newline |
| 48 | 49 | ||
| 49 | def _print_inversion_end(record): | 50 | def _print_inversion_end(record): |
| 51 | print "Inversion record IDs: (%d, %d)" % (record.inversion_start_id,record.id) | ||
| 50 | print "Type: %s" % ("Inversion end") | 52 | print "Type: %s" % ("Inversion end") |
| 51 | print "Time: %d" % (record.job.inversion_end) | 53 | print "Time: %d" % (record.job.inversion_end) |
| 52 | print "Duration: %d" % ( | 54 | print "Duration: %d" % ( |
