} $file = 'people'; $file = 'contacts'; $file = 'cars'; $file = 'yvi'; if ($argc > 1) { $file = $argv[1]; } $file = __DIR__ . '/var/Data/' . $file . '.json'; $fileContents = ''; $csvPath = __DIR__ . '/memory_samples.csv'; $fileHandle = fopen($csvPath, 'a'); $standardMemoryUsage = memory_get_usage(TRUE); printf('Memory: %s Peak: %s' . PHP_EOL, GeneralUtility::formatBytes(memory_get_usage(TRUE) - $standardMemoryUsage), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE) - $standardMemoryUsage)); printf('File size: %s' . PHP_EOL, GeneralUtility::formatBytes(filesize($file))); printf('Memory: %s Peak: %s' . PHP_EOL, GeneralUtility::formatBytes(memory_get_usage(TRUE) - $standardMemoryUsage), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE) - $standardMemoryUsage)); file_get_contents($file); printf('Memory: %s Peak: %s' . PHP_EOL, GeneralUtility::formatBytes(memory_get_usage(TRUE) - $standardMemoryUsage), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE) - $standardMemoryUsage)); $fileContents = file_get_contents($file); printf('Memory: %s Peak: %s' . PHP_EOL, GeneralUtility::formatBytes(memory_get_usage(TRUE) - $standardMemoryUsage), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE) - $standardMemoryUsage)); printf('Memory ratio: memory/filesize = %s' . PHP_EOL, (memory_get_usage(TRUE) - $standardMemoryUsage) / filesize($file)); $json = json_decode(file_get_contents($file), TRUE); printf('Memory: %s Peak: %s' . PHP_EOL, GeneralUtility::formatBytes(memory_get_usage(TRUE) - $standardMemoryUsage), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE) - $standardMemoryUsage)); printf('Memory ratio: memory/filesize = %s' . PHP_EOL, (memory_get_usage(TRUE) - $standardMemoryUsage) / filesize($file)); printf('Memory ratio: memory/strlen = %s' . PHP_EOL, (memory_get_usage(TRUE) - $standardMemoryUsage) / strlen($fileContents)); printf('Memory ratio: memory/braces = %s' . PHP_EOL, (memory_get_usage(TRUE) - $standardMemoryUsage) / substr_count($fileContents, '{')); printf('Memory ratio: memory/comma = %s' . PHP_EOL, (memory_get_usage(TRUE) - $standardMemoryUsage) / substr_count($fileContents, ',')); printf('Memory ratio: log(memory)/log(comma) = %s' . PHP_EOL, log(memory_get_usage(TRUE) - $standardMemoryUsage) / log(filesize($file))); $toMb = 1024 * 1024; //fputcsv($fileHandle, array(filesize($file) / $toMb, (float)(memory_get_usage(TRUE) - $standardMemoryUsage) / $toMb, (float)(memory_get_peak_usage(TRUE) - $standardMemoryUsage) / $toMb)); fputcsv($fileHandle, array(filesize($file), (double) (memory_get_usage(TRUE) - $standardMemoryUsage), (double) (memory_get_peak_usage(TRUE) - $standardMemoryUsage)));
/** * Prints the memory usage */ public static function printMemorySample() { static::$backtraceOffset += 1; static::debug(sprintf('Memory: %s (max: %s)', GeneralUtility::formatBytes(memory_get_usage(TRUE)), GeneralUtility::formatBytes(memory_get_peak_usage(TRUE)))); static::$backtraceOffset -= 1; }