{ return $a[DATA_GZ] < $b[DATA_GZ] ? -1 : 1; } function CompareElapsed($a, $b) { return $a[DATA_ELAPSED] < $b[DATA_ELAPSED] ? -1 : 1; } // PAGE //////////////////////////////////////////////// $Page =& new Template(LIB_PATH); // GET_VARS //////////////////////////////////////////////// list($Incl, $Excl) = WhiteListInEx(); $Tests = WhiteListUnique('test.csv', $Incl); // assume test.csv in name order $Langs = WhiteListUnique('lang.csv', $Incl); // assume lang.csv in name order $SLangs = SelectedLangs($Langs); if (isset($_GET['test']) && strlen($_GET['test']) && strlen($_GET['test']) <= NAME_LEN) { $X = $_GET['test']; if (ereg("^[a-z]+\$", $X)) { $T = $X; } } $Available = isset($T) && isset($Tests[$T]) && isset($Incl[$T]); if (!$Available) { $T = 'nbody'; } if (isset($_GET['sort']) && strlen($_GET['sort']) && strlen($_GET['sort']) <= 7) { $X = $_GET['sort']; if (ereg("^[a-z]+\$", $X) && ($X == 'fullcpu' || $X == 'kb' || $X == 'gz' || $X == 'elapsed')) { $S = $X; }
$Action = 'calculate'; } $Page =& new Template(LIB_PATH); $Body =& new Template(LIB_PATH); $S = ''; $PageId = 'boxplot'; require_once LIB_PATH . 'lib_boxplot.php'; $mark = MarkTime('u64q/'); $mark = $mark . ' Q6600'; $Title = 'Fastest programming language'; $Body->set('Title', $Title); $TemplateName = 'fastest.tpl.php'; $About =& new Template(ABOUT_PATH); $AboutTemplateName = 'fastest-about.tpl.php'; $About->set('DataSet', $DataSet); $SLangs = SelectedLangs($Langs, $Action, $HTTP_GET_VARS); if (!file_exists(ABOUT_PATH . $AboutTemplateName)) { $AboutTemplateName = 'blank-about.tpl.php'; } $Body->set('DataSet', $DataSet); $metaRobots = '<meta name="robots" content="all" /><meta name="revisit" content="4 days" />'; $MetaKeywords = '<meta name="description" content="Find out which programming language has the fastest benchmark programs (' . PLATFORM_NAME . ') & how your favorite language compares." />'; $faqUrl = CORE_SITE . 'help.php'; $bannerUrl = CORE_SITE; $timeUsed = 'Elapsed secs'; $Data = FullRatios('u64/' . DATA_PATH . 'data.csv', $Tests, $Langs, $Incl, $Excl, $SLangs); $Data = array_merge_recursive($Data, FullRatios('u64q/' . DATA_PATH . 'data.csv', $Tests, $Langs, $Incl, $Excl, $SLangs)); $Data = array_merge_recursive($Data, FullRatios('u32/' . DATA_PATH . 'data.csv', $Tests, $Langs, $Incl, $Excl, $SLangs)); $Data = array_merge_recursive($Data, FullRatios('u32q/' . DATA_PATH . 'data.csv', $Tests, $Langs, $Incl, $Excl, $SLangs)); $Body->set('Data', FullScores($SLangs, $Data)); // TEMPLATE VARS ////////////////////////////////////////////////
$n = sizeof($a); $mid = floor($n / 2); return $n % 2 != 0 ? $a[$mid] : ($a[$mid - 1] + $a[$mid]) / 2.0; } // PAGE //////////////////////////////////////////////// $Page =& new Template(LIB_PATH); $Body =& new Template(LIB_PATH); $PageId = 'median'; $TemplateName = 'median.tpl.php'; // GET_VARS //////////////////////////////////////////////// list($Incl, $Excl) = WhiteListInEx(); $Tests = WhiteListUnique('test.csv', $Incl); // assume test.csv in name order $Langs = WhiteListUnique('lang.csv', $Incl); // assume lang.csv in name order $SLangs = SelectedLangs($Langs, $Action); // HEADER //////////////////////////////////////////////// $Title = 'Which programs are fastest?'; // DATA //////////////////////////////////////////////// $Data = BoxplotData(DATA_PATH . 'data.csv', $Tests, $Langs, $Incl, $Excl, $SLangs); // META //////////////////////////////////////////////// $metaRobots = '<meta name="robots" content="index,follow,noarchive" />'; $MetaKeywords = '<meta name="description" content="Which of these programming language implementations have the fastest benchmark programs?" />'; // TEMPLATE VARS //////////////////////////////////////////////// $Page->set('PageTitle', $Title . BAR . 'Python Interpreters Benchmarks Game'); $Page->set('BannerTitle', BANNER_TITLE); $Body->set('Tests', $Tests); $Body->set('Langs', $Langs); $Body->set('Excl', $Excl); $Body->set('Data', $Data); $Body->set('Title', $Title);