from gumby.spectraperf.performanceprofile import MatrixHelper, ProfileHelper, ActivityMatrix, SessionHelper, Type if __name__ == '__main__': if len(sys.argv) < 5: print "Usage: python calculate_similarity.py configFile csvPath revision testcase" print "Note: csvPath is path to csv files, no slash at the end (TODO)" sys.exit(0) config = loadConfig(sys.argv[1]) csvPath = sys.argv[2] rev = sys.argv[3] testcase = sys.argv[4] h = MatrixHelper(config) i = 0 print "revision: %s" % rev prevRevision = h.getPreviousRevision(rev) print "previous revision: %s" % prevRevision print "__________________" # load profile for revision and testcase profileHelper = ProfileHelper(config) p = profileHelper.loadFromDatabase(prevRevision, testcase) if p != -1: output = "" matrix = ActivityMatrix(p.getDatabaseId(), 5, Type.BYTESWRITTEN, rev, testcase)
def getCallsPerStacktrace(rev): m = MatrixHelper(config) calls = m.getCallsPerStacktrace(rev) return calls
def getMatrix(revision): m = MatrixHelper(config) matrix = m.loadFromDatabase(revision, MetricType.COSINESIM) return matrix
def getTotalBytesWrittenPerRevision(): m = MatrixHelper(config) tb = m.getTotalBytesWrittenPerRevision() return tb
def getAvgMetricPerRevision(): m = MatrixHelper(config) sim = m.getAvgMetricPerRevision(MetricType.COSINESIM) return sim
def getSimilarityPerStacktrace(): m = MatrixHelper(config) sim = m.getMetricPerStacktrace(MetricType.COSINESIM) return sim