def pickleMPStatMC(client_mpstat_files, server_mpstat_files, pickle_dir, stats_dir): client_usage = [] server_usage = [] # Parse the mpstat log files for mpstat_file in client_mpstat_files: mstats = MPStatParser(mpstat_file) client_usage.append(mstats.get_avg_usage()) for mpstat_file in server_mpstat_files: mstats = MPStatParser(mpstat_file) server_usage.append(mstats.get_avg_usage()) # Compute average utilizations cli_muser = numpy.mean(map(lambda (muser, msys, msirq): muser, client_usage)) cli_msys = numpy.mean(map(lambda (muser, msys, msirq): msys, client_usage)) cli_msirq = numpy.mean(map(lambda (muser, msys, msirq): msirq, client_usage)) srv_muser = numpy.mean(map(lambda (muser, msys, msirq): muser, server_usage)) srv_msys = numpy.mean(map(lambda (muser, msys, msirq): msys, server_usage)) srv_msirq = numpy.mean(map(lambda (muser, msys, msirq): msirq, server_usage)) cli_summary = "user: %.2f, sys: %.2f, sirq: %.2f" % ( cli_muser, cli_msys, cli_msirq) srv_summary = "user: %.2f, sys: %.2f, sirq: %.2f" % ( srv_muser, srv_msys, srv_msirq) # Pickle CPU utilization data mpstat_pfile = os.path.join(pickle_dir, 'mpstat_mc_p.txt') cli_kernel_usage = cli_msys + cli_msirq srv_kernel_usage = srv_msys + srv_msirq summary = mstats.summary() data = (cli_kernel_usage, cli_summary, srv_kernel_usage, srv_summary) fd = open(mpstat_pfile, 'wb') cPickle.dump(data, fd) fd.close() # Write stats about CPU utilization cpu_stats_file = os.path.join(stats_dir, 'cpu_util.txt') cpu_stats_fd = open(cpu_stats_file, 'w') cpu_stats_fd.write('Client kernel usage (average) = %s\n' % str(cli_kernel_usage)) cpu_stats_fd.write('--- Average usage breakdown ---\n') cpu_stats_fd.write(str(cli_summary)) cpu_stats_fd.write('\nServer kernel usage (average) = %s\n' % str(srv_kernel_usage)) cpu_stats_fd.write('--- Average usage breakdown ---\n') cpu_stats_fd.write(str(srv_summary)) cpu_stats_fd.close()
def pickleMPStat(mpstat_file, pickle_dir, stats_dir): # Parse the mpstat log file mstats = MPStatParser(mpstat_file) # Pickle CPU utilization data mpstat_pfile = os.path.join(pickle_dir, 'mpstat_p.txt') kernel_usage = mstats.kernel_usage() summary = mstats.summary() data = (kernel_usage, summary) fd = open(mpstat_pfile, 'wb') cPickle.dump(data, fd) fd.close() # Write stats about CPU utilization cpu_stats_file = os.path.join(stats_dir, 'cpu_util.txt') cpu_stats_fd = open(cpu_stats_file, 'w') cpu_stats_fd.write('Kernel usage (average) = %s\n' % str(kernel_usage)) cpu_stats_fd.write('--- Average usage breakdown ---\n') cpu_stats_fd.write(str(summary)) cpu_stats_fd.close()
def pickleMPStatMC(client_mpstat_files, server_mpstat_files, pickle_dir, stats_dir): client_usage = [] server_usage = [] # Parse the mpstat log files for mpstat_file in client_mpstat_files: mstats = MPStatParser(mpstat_file) client_usage.append(mstats.get_avg_usage()) for mpstat_file in server_mpstat_files: mstats = MPStatParser(mpstat_file) server_usage.append(mstats.get_avg_usage()) # Compute average utilizations cli_muser = numpy.mean( map(lambda (muser, msys, msirq): muser, client_usage)) cli_msys = numpy.mean(map(lambda (muser, msys, msirq): msys, client_usage)) cli_msirq = numpy.mean( map(lambda (muser, msys, msirq): msirq, client_usage)) srv_muser = numpy.mean( map(lambda (muser, msys, msirq): muser, server_usage)) srv_msys = numpy.mean(map(lambda (muser, msys, msirq): msys, server_usage)) srv_msirq = numpy.mean( map(lambda (muser, msys, msirq): msirq, server_usage)) cli_summary = "user: %.2f, sys: %.2f, sirq: %.2f" % (cli_muser, cli_msys, cli_msirq) srv_summary = "user: %.2f, sys: %.2f, sirq: %.2f" % (srv_muser, srv_msys, srv_msirq) # Pickle CPU utilization data mpstat_pfile = os.path.join(pickle_dir, 'mpstat_mc_p.txt') cli_kernel_usage = cli_msys + cli_msirq srv_kernel_usage = srv_msys + srv_msirq summary = mstats.summary() data = (cli_kernel_usage, cli_summary, srv_kernel_usage, srv_summary) fd = open(mpstat_pfile, 'wb') cPickle.dump(data, fd) fd.close() # Write stats about CPU utilization cpu_stats_file = os.path.join(stats_dir, 'cpu_util.txt') cpu_stats_fd = open(cpu_stats_file, 'w') cpu_stats_fd.write('Client kernel usage (average) = %s\n' % str(cli_kernel_usage)) cpu_stats_fd.write('--- Average usage breakdown ---\n') cpu_stats_fd.write(str(cli_summary)) cpu_stats_fd.write('\nServer kernel usage (average) = %s\n' % str(srv_kernel_usage)) cpu_stats_fd.write('--- Average usage breakdown ---\n') cpu_stats_fd.write(str(srv_summary)) cpu_stats_fd.close()