Взглянуть на действия алгоритма, и подумать том как они выполняются.
Вопрос по сути и аналогичен "как смотреть?" /"как думать?" - ответ на подобные вопросы возможен только один: "естественным образом". Если индивид за годы своей жизни сам не научился делать это, то никакие ответы не даруют ему таких способностей (волшебства не бывает).
Пример, который ты точно поймешь: Задача - написать вопрос, и покакать. Ты решаешь сначала второе действие выполнить, а затем первое. Но эти действия, по их сути, независимы друг от друга: вопрос набираешь руками, а какаешь жопкой. Можно их выполнять одновременно? Можно - садишься на "философский камень", и с мобильника пишешь вопрос. Вот ты и распараллелил два важных действия (не забыв после этого подвига протереть мобилку антисептиком), и пора претендовать на должность сеньора.
Другие языки программирования и технологии
Как найти участок кода который можно распараллелить?
Практически любой кусок кода можно распараллелить. Параллельно можно выполнять любые участки кода, независимые по результатам, ресурсам и управлению.
Вручную - тупо ищешь профилировщиком узкие места, которые нуждаются в существенном ускорении, смотришь тип параллелизма (векторный/многопроцессорный/...) и выделяешь независимые компоненты. Автоматически - нужно строить параллельно-ярусную форму графа алгоритма, тогда на одном ярусе окажутся участки, которые можно выполнять параллельно
Вручную - тупо ищешь профилировщиком узкие места, которые нуждаются в существенном ускорении, смотришь тип параллелизма (векторный/многопроцессорный/...) и выделяешь независимые компоненты. Автоматически - нужно строить параллельно-ярусную форму графа алгоритма, тогда на одном ярусе окажутся участки, которые можно выполнять параллельно
Зависит от контекста. Вы хотите просто параллельно запускать какие-то несвязанные участки кода или хотите параллельно запустить подсчет чего-либо, например суммы элементов массива.
Janbolat Temirov
а можешь в обоих случаях прояснить? буду превелико благодарен!
В разработке это называют чистотой.
Чистые функции, чистые блоки кода могут без проблем исполнятся параллельно.
Чистые функции, чистые блоки кода могут без проблем исполнятся параллельно.
Похожие вопросы
- Необходимо написать кусок кода, который формирует новый массив из исходного.
- Господа! Напишите (если такое конечно возможность) пример двоичного кода, который невозможно сжать (более 10 символов)
- ЧТО ДЕЛАТЬ ЕСЛИ НА ВЕСЬ если на весь экран голые тётки и просят ввести код который ни кто незнает?
- Есть код который находит простые числа. Почему мы проверяем "d*d <= n" ?
- Дано вещественное число R и массив размера N. Найти элемент массива, который наименее близок к данному числу
- Помогите найти ошибки в коде (паскаль)
- помогите найти ошибку в коде на Си
- Помогите найти ошибку в коде
- Здравствуйте всем! Помогите пожалуйста найти ошибку в моем коде
- люди, помогите пожалуйста найти код от вируса