Ubuntu Xenial, Apache/2.4.6 PHP/5.6.27
.htaccess
php_value max_execution_time 9999999
php_value memory_limit 4232M
Копирую порядка 150 файлов размером в среднем - 10кб
Копирую функцией exec("cp '$src' '$dst'", $output, $retrun_var);
Если в момент копирования в оперативную память загружены данные, скорость копирования резко падает (20мб занято - скорость копирования всех файлов порядка 10 секунд, 120мб занято - скорость копирования возрастает до 40 секунд). Функция копирования ни как не связана с этим "большим" объемом данных.
функция копирования
function copy($src, $dst) {
$files = scandir($src);
foreach ($files as $file)
{
if($file == "." || $file == "..") continue;
$oldFullName = $src. DIRECTORY_SEPARATOR .$file;
$newFullName = $dst. DIRECTORY_SEPARATOR .$file;
exec("cp '$oldFullName' '$newFullName'", $output, $retrun_var);
if($retrun_var != 0) return false;
}
return true;
}