Oki
Продвинутый
- Сообщения
- 452
- Репутация
- 62
Каким образом хорошо параллелится?Эта задача хорошо параллелится и ее можно выполнить на нескольких ядрах процессора что дополнительно уменьшит время.
Каким образом хорошо параллелится?Эта задача хорошо параллелится и ее можно выполнить на нескольких ядрах процессора что дополнительно уменьшит время.
Разве выполнение следующих вычислений зависит от предыдущих? То есть чтобы к примеру вычислить значение для числа 100 нужны данные предыдущих вычислений?Каким образом хорошо параллелится?
Да, зависит. Вычисления итераций идут по цепочке. Можно, конечно, заготовить файл или массив (что сильно ограничено в объёме) результатов применения итерации для всех последовательных чисел, но так никто обычно не делает (кроме специфических целей), так как объём требующейся информации намного превышает длины цепочек, да к тому же скорость помещения результатов в блоки информации и чтения из них по индексу занимает время, сравнимое с выполнением одной итерации даже при работе с оперативной памятью (а при работе с файлом вообще сильно проигрывает), а посему не даёт практического эффекта даже при равноценном сравнении, о котором и речи нет, поскольку в некотором смысле в среднем старт с числа N требует порядка 3 * Log(N) / Log (4/3) итераций, что куда меньше полного перебора всех чисел от 1 до N. Поэтому многопоточность вижу целесообразной только при работе с очень огромными числами в последовательности исключительно для ускорения арифметики огромных чисел. Ну или для специфической постановки исследовательской задачи на эту тему.Разве выполнение следующих вычислений зависит от предыдущих? То есть чтобы к примеру вычислить значение для числа 100 нужны данные предыдущих вычислений?
Где вы увидели зависимость в этом коде? https://autoit-script.ru/threads/gi...orenie-vychislenij-resheno.28551/#post-156682Да, зависит.