Я хочу максимизировать функцию правдоподобия L вида
L (\ theta, x_1, \ ldots, x_13) = \ sum_ {k = 1} ^ 13 л_k (x_k)
относительно $ \ theta $, где x_k - это большие наборы данных (примерно 9 ГБ каждый).
У меня есть код C, который вычисляет каждую из l_k функций независимо. Для каждой итерации числового оптимизатора мне нужно снова загружать каждый из x_k , потому что мой компьютер не загружает их все одновременно. Жалуется на память.
В настоящее время код написан так, что x_k и другие большие массивы хранятся как глобальные переменные.
Кроме того, я работал над распараллеливанием, но я не уверен, каков наилучший способ сделать это (я мог бы распараллелить вычисление l_k или цикл внутри l_k s), я прочитал, что работа с глобальными переменными является чистой. рекомендуется при распараллеливании.
Есть предложения ??
Извините за математику ...