Entry tags:
Оптимизация кода
Объяснил коллеге, зачем нужно преаллокация памяти. Понимаешь, говорю, если добавлять строчку за строчкой в матрицу, то каждый раз MatLab ищет новое место в памяти, копирует туда уже сделанную матрицу и дописывает новую строчку. А если ты сразу сказал ему, сколько у тебя будет строчек — он сразу столько выделил и ничего никуда не копирует.
Понял? Понял!
Сегодня просматриваю написанный им код. В одном месте ему нужна переменная, которую он запишет в Excel. Размер заранее посчитать нетривиально. Преаллокация на 500000 (пятьсот тысяч) строк, из которых реально заполняется две с чем-то тысячи. Команда записи этой матрицы в Excel рушит мой комп...
Понял? Понял!
Сегодня просматриваю написанный им код. В одном месте ему нужна переменная, которую он запишет в Excel. Размер заранее посчитать нетривиально. Преаллокация на 500000 (пятьсот тысяч) строк, из которых реально заполняется две с чем-то тысячи. Команда записи этой матрицы в Excel рушит мой комп...
no subject
no subject
no subject
no subject
(проблема аллокации матриц при этом остаётся, даже если вычеркнуть Excel из связки)
no subject
no subject
no subject
no subject
no subject
Я думаю, тебе понравится тот факт, что эту программу нам поставила Еврокомиссия в рамках нового закона по контролю страховы компаний :-Р
no subject
no subject
Плюс, есть огромное количество людей, которым проще манипулировать данными именно в Excel - для них мы тоже результаты сводим в один файл и отсылаем. То есть это могут быть промежуточные данные, но продолжение рассчётов находится вне нашего отдела, а Excel - это такая lingua franca при общении на разных языках (у нас есть ещё один актуарный отдел, который считает в SAS, и третий на VB.NET).
no subject