ADT
        arm-eh
        ast-experimental
        enum
        forall-pointer-decay
        jacob/cs343-translation
        new-ast-unique-expr
        pthread-emulation
        qualifiedEnum
      
      
        
          | Last change
 on this file since c1136c56 was             c6f1f3e, checked in by Thierry Delisle <tdelisle@…>, 6 years ago | 
        
          | 
Jenkins now also computes various speed-up graphs for performance monitoring
 | 
        
          | 
              
Property                 mode
 set to                 100755 | 
        
          | File size:
            1.0 KB | 
      
      
| Line |  | 
|---|
| 1 | #!/usr/bin/python3 | 
|---|
| 2 |  | 
|---|
| 3 | import sys | 
|---|
| 4 |  | 
|---|
| 5 | import urllib.request | 
|---|
| 6 | import re | 
|---|
| 7 | import json | 
|---|
| 8 |  | 
|---|
| 9 | if len(sys.argv) != 3 : | 
|---|
| 10 | sys.exit("Expected architecture and file name as arguments") | 
|---|
| 11 |  | 
|---|
| 12 | build_cache = {} | 
|---|
| 13 |  | 
|---|
| 14 | def build(number): | 
|---|
| 15 | if number in build_cache: | 
|---|
| 16 | return build_cache[number] | 
|---|
| 17 |  | 
|---|
| 18 | url = "https://cforall.uwaterloo.ca/jenkins/job/Cforall/job/master/%s/api/json?" % number | 
|---|
| 19 | f = urllib.request.urlopen(url) | 
|---|
| 20 | j = json.loads(f.read().decode("utf-8")) | 
|---|
| 21 | res = re.search("([^:]+):(x86|x64)", j['description']) | 
|---|
| 22 |  | 
|---|
| 23 | build_cache.update({number : (res.group(1), res.group(2))}) | 
|---|
| 24 | return build_cache[number] | 
|---|
| 25 |  | 
|---|
| 26 | content = {} | 
|---|
| 27 | try: | 
|---|
| 28 | with open(sys.argv[2]) as f: | 
|---|
| 29 | f.readline() | 
|---|
| 30 | f.readline() | 
|---|
| 31 |  | 
|---|
| 32 | for l in f: | 
|---|
| 33 | data = [d.replace('"', '') for d in l.split(',')] | 
|---|
| 34 | number = data[2] | 
|---|
| 35 | _, arch = build(number) | 
|---|
| 36 | if arch == sys.argv[1]: | 
|---|
| 37 | if not data[1] in content: | 
|---|
| 38 | content.update({data[1] : []}) | 
|---|
| 39 |  | 
|---|
| 40 | content[data[1]].append(float(data[0])) | 
|---|
| 41 | except IOError as e: | 
|---|
| 42 | sys.exit(e.strerror) | 
|---|
| 43 |  | 
|---|
| 44 | print(','.join(content.keys())) | 
|---|
| 45 | print(','.join([str(sum(vals) / len(vals)) for vals in content.values()])) | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.