• Регистрация
Alex991
Alex991 0.00
н/д

Создание параллельных задач

17.10.2023
Настали времена, когда ядер больше чем задач, ищу помощи или совета: Есть ПК на 100 ядер, есть 10 начальных условий. Надо просчитать 10 раз задачу со случайными величинами для 10 начальных условий, чт...

Настали времена, когда ядер больше чем задач, ищу помощи или совета:

Есть ПК на 100 ядер, есть 10 начальных условий. Надо просчитать 10 раз задачу со случайными величинами для 10 начальных условий, чтобы все 100 ядер были задействованы и по одному разу.

Предполагаю, что как-то надо создать 10 задач/кластеров и распихать на parfor-ы. 

P.s. создавать 100 н.у. не хочу, т.к. результаты неудобно сохранять

Теги

    17.10.2023

    Комментарии

    • aBoomest
      aBoomest+942.89
      20.10.2023 08:47

      На сколько я знаю, парфор это круто конечно, но самому вручную распихать - задача не простая. При этом если пользоваться арифметикой присущей матлабу (т.е. использовать матрицы, а не циклы и т.п.) то матлаб сам хорошо все распихает.
      1. Была задача расчета несколько десятков тысяч раз посчитать систему д.у. Расчет несколько часов.
      2. Ручное распихивание и парфор на 4 ядра уменьшили время до примерно полутра часов.
      3.Переделал программ у с использованием везде где возможно матричных матлабовских вычислений. Скорость повысилась до нескольких минут.

      • bvg777
        bvg7770.00
        1.11.2023 17:04

        Почитайте эту статью. Может поможет.