本文整理汇总了PHP中pts_file_io::array_filesize方法的典型用法代码示例。如果您正苦于以下问题:PHP pts_file_io::array_filesize方法的具体用法?PHP pts_file_io::array_filesize怎么用?PHP pts_file_io::array_filesize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pts_file_io
的用法示例。
在下文中一共展示了pts_file_io::array_filesize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: run
public static function run($r)
{
if (pts_openbenchmarking_client::user_name() == false) {
echo PHP_EOL . 'You must first be logged into an OpenBenchmarking.org account.' . PHP_EOL;
echo PHP_EOL . 'Create An Account: http://openbenchmarking.org/';
echo PHP_EOL . 'Log-In Command: phoronix-test-suite openbenchmarking-setup' . PHP_EOL . PHP_EOL;
return false;
}
ini_set('memory_limit', '2048M');
foreach (pts_types::identifiers_to_test_profile_objects($r, false, true) as $test_profile) {
$qualified_identifier = $test_profile->get_identifier();
// First make sure the test profile is already in the OpenBenchmarking.org database...
$json = pts_openbenchmarking::make_openbenchmarking_request('is_test_profile', array('i' => $qualified_identifier));
$json = json_decode($json, true);
if (!isset($json['openbenchmarking']['test']['valid']) || $json['openbenchmarking']['test']['valid'] != 'TRUE') {
echo PHP_EOL . $qualified_identifier . ' must first be uploaded to OpenBenchmarking.org.' . PHP_EOL;
// break;
}
// Set some other things...
pts_client::pts_set_environment_variable('FORCE_TIMES_TO_RUN', 1);
pts_client::pts_set_environment_variable('TEST_RESULTS_NAME', $test_profile->get_title() . ' Testing ' . date('Y-m-d'));
pts_client::pts_set_environment_variable('TEST_RESULTS_IDENTIFIER', 'Sample Run');
pts_client::pts_set_environment_variable('TEST_RESULTS_DESCRIPTION', 1);
pts_openbenchmarking_client::override_client_setting('AutoUploadResults', true);
pts_openbenchmarking_client::override_client_setting('UploadSystemLogsByDefault', true);
// Take screenshots
pts_client::pts_set_environment_variable('SCREENSHOT_INTERVAL', 9);
pts_module_manager::attach_module('timed_screenshot');
$force_ss = true;
$reference_ss_file = pts_module_manager::module_call('timed_screenshot', 'take_screenshot', $force_ss);
sleep(2);
$apitrace = pts_file_io::glob('/usr/local/lib/*/apitrace/wrappers/glxtrace.so');
if (!empty($apitrace) && pts_client::executable_in_path('apitrace')) {
$apitrace = array_shift($apitrace);
putenv('LD_PRELOAD=' . $apitrace);
} else {
$apitrace = false;
}
// So for any compiling tasks they will try to use the most aggressive instructions possible
putenv('CFLAGS=-march=native -O3');
putenv('CXXFLAGS=-march=native -O3');
pts_test_installer::standard_install($qualified_identifier, true);
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($qualified_identifier);
if ($apitrace) {
putenv('LD_PRELOAD=');
}
if ($reference_ss_file) {
$reference_ss = pts_image::image_file_to_gd($reference_ss_file);
unlink($reference_ss_file);
$screenshots_gd = array();
$screenshots = pts_module_manager::module_call('timed_screenshot', 'get_screenshots');
var_dump($screenshots);
foreach ($screenshots as $ss_file) {
$screenshots_gd[$ss_file] = pts_image::image_file_to_gd($ss_file);
if ($screenshots_gd[$ss_file] == false) {
continue;
}
$ss_delta = pts_image::gd_image_delta_composite($reference_ss, $screenshots_gd[$ss_file], true);
if (count($ss_delta) < floor(imagesx($reference_ss) * 0.5600000000000001) || filesize($ss_file) > 2097152) {
// If less than 56% of the pixels are changing on X, then likely not much to show off... (CLI only likely)
// Or if filesize of image is beyond 2MB
//echo 'dropping' . $ss_file . PHP_EOL;
unset($screenshots_gd[$ss_file]);
pts_file_io::unlink($ss_file);
}
}
$ss_files = array_keys($screenshots_gd);
shuffle($ss_files);
// Don't upload more than 4MB worth of screenshots
while (pts_file_io::array_filesize($ss_files) > 1048576 * 2) {
$f = array_pop($ss_files);
unlink($f);
}
if (count($ss_files) > 0) {
$c = 1;
foreach ($ss_files as $i => $file) {
$new_file = dirname($file) . '/screenshot-' . $c . '.png';
rename($file, $new_file);
$ss_files[$i] = $new_file;
$c++;
}
$ss_zip_file = PTS_OPENBENCHMARKING_SCRATCH_PATH . 'screenshots-' . $test_profile->get_identifier_base_name() . '-' . $test_profile->get_test_profile_version() . '.zip';
$zip_created = pts_compression::zip_archive_create($ss_zip_file, $ss_files);
if ($zip_created) {
echo count($ss_files) . ' screenshots captured for use.';
//'tp_sha1' => sha1_file($zip_file),
//'tp_zip' => base64_encode(file_get_contents($zip_file)),
}
foreach ($ss_files as $file) {
// pts_file_io::unlink($file);
}
}
}
$test_binary = self::locate_test_profile_lead_binary($test_profile);
$shared_library_dependencies = array();
$instruction_usage = array();
$gl_calls = null;
if (is_executable($test_binary)) {
if ($apitrace) {
//.........这里部分代码省略.........