Я бы все это бы сделал бы на кроне , этим можно лимиты обойти 
<?
// увеличеваем лимиты сервера
@set_time_limit(30000);
ini_set('max_execution_time', 30000);
// грузим классы Битрикса
require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/include/prolog_before.php");
Cmodule::IncludeModule('catalog');
Cmodule::IncludeModule('iblock');
$$IBLOCKID = ''; // Задем Иблок с товармыми предложениями
// проходимся по всем товарам
$arFilter = Array("IBLOCK_ID"=>$IBLOCKID, "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y", 'INCLUDE_SUBSECTIONS'=>'Y', );
$res = CIBlockElement::GetList(Array(), $arFilter, false, false, array());
while ($ob = $res->GetNextElement())
{
    $arr = $ob->GetFields();
    // задаем кол-во рандомное
    $kolvo =  rand(1,11);
    // вставляем его
    $arPrise = array('QUANTITY' => $kolvo);// зарезервированное количество
    CCatalogProduct::Update($arr['ID'], $arPrise);
    
}
echo 'Скрип сработал  все хорошо (:';
?>