sub = l.At(i) result += sub.GetTotalSize() return result * 1.0 f = TFile(sys.argv[1], "READ") trees = ['CollectionTree', 'RunMetadataTree'] for tree in trees: t = TTree() t = f.Get(tree) branchnames = map(lambda branch: branch.GetName(), t.GetListOfBranches()) MB = 1e6 GB = 1e9 zipbytes = t.GetZipBytes() # returns compressed size. names = {} sizes = {} for b in branchnames: branch = t.GetBranch(b) if b in names.keys(): names[b] += 1 #print "names[b]=", names[b] continue s = get_branch_size(branch) names[b] = 1 sizes[b] = s print "tree %s" % tree print "Collection Size (MB) #duplication of data (factor)"