⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 speedup.prl

📁 一个用在mips体系结构中的操作系统
💻 PRL
字号:
#!/usr/local/bin/perl5 -w## Copyright (C) 1996-1998 by the Board of Trustees#    of Leland Stanford Junior University.# # This file is part of the SimOS distribution. # See LICENSE file for terms of the license. ### Determine speedup info by comparing the summary output# of the runs with varying number of CPUs. ## ASPLOS/SUIF paperrequire "getopts.pl";&Getopts('i:n:');if( defined($opt_i) ) {     $inputFile = $opt_i;} else {    $inputFile = "prlvars.prl";}if (defined($opt_n)) {    $name = $opt_n;} else {     die "speedup.prl requires the name of the wload! (-n) \n";}if (defined($ENV{'SIMOS_DIR'}) ) {     $xx = "$ENV{'SIMOS_DIR'}/src/apps/scripts";    print STDERR "Added $xx to perl search path. \$SIMOS_DIR defines it \n";    unshift(@INC,$xx);} else {     print STDERR "SIMOS_DIR is not an environment variable \n";}require "simos-lib.prl";$group{1} = '01';$group{2} = '02';$group{4} = '04';$group{8} = '08';$group{16} = '16';do $inputFile;sub PrintCmp {    my $f = shift;    my $mode = shift;        my $n = "$name-01-$mode";    my $base =  $data{$n}{$f};    if( !defined($base)) {        print STDERR "NotDef \$data{$n}{$f} \n";    }    if (defined($format{$f})) {        $x = sprintf($format{$f},$base);    } else {         $x = $base;    }    if ($base > 0 ) {         printf("%-20s : %10s (   1)   |","$mode-$f",$x);    } else {        printf("%-20s : %10s          |","$mode-$f",$x);    }    for $i (2,4,8,16) {           $val = $data{"$name-$group{$i}-$mode"}{$f};        if (defined($format{$f})) {            $x = sprintf($format{$f},$val);        } else {             $x = $val;        }        if( $base==0 && $val > 0 ) {             $base = $val;        }        if( $base == 0 || $val > 100 * $base ) {                      printf("%10s        |", $x);        } else {             printf("%10s (%5.2f)|", $x,1.0*$val/$base);        }    }        print "\n";}print "\nSPEEDUP INFORMATION SUMMARY FOR $name \n\n\n";print "                         1 CPU             |         2  CPUs  |       4  CPUs    |          8 CPUs  |        16  CPUs |\n";print " ---------------------------------------------------------------------------------------------------------------- \n";for $mode ('total','user','userspin') {     PrintCmp("seconds",$mode);}PrintCmp("_instr",'user');print "--------------------------------- \n";PrintCmp("dL2Miss",'total');PrintCmp("dL2Miss",'userspin');PrintCmp("missclass-cold",'user');PrintCmp("missclass-repl",'user');PrintCmp("missclass-true",'user');PrintCmp("missclass-false",'user');PrintCmp("missclass-other",'user');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -