Виды заработка в интернете

Программы. Организация синхронизации при программировании

Стратегия «разделяй и властвуй» – очень мощное средство для организации параллельной обработки и обеспечения высокой загрузки процессоров. В наших экспериментах все доступные вычислительные средства были активны более чем 95% времени. Но, с точки зрения пользователя, предотвращение блокировок также существенно. Нельзя представить себе такое объяснение, что программа пользователя пригнана к машине, но иногда возникает так много параллельной работы, что машина захлебывается. По нашему мнению, эта проблема неотделима от природы языка и свойств примитивов, используемых для описания параллелизма и критических секций. Качественный хостинг cms joomla по этой ссылке.

Элементарный алгоритм «разделяй и властвуй» имеет очевидное определение, но применяемые для его описания средства позволяют рутинно выражать неопределенные вычисления. Любые ошибки при программировании, в критической секции или вне ее, ведут к неповторяемости результатов. В этом случае, при переходе от версии к версии одного и того же алгоритма, существует риск рассогласования в обработке – как бы, незначительное изменение точных границ интервала. Представляется естественным позволить программисту определять те части программы, которые могут выполняться одновременно. Однако если только программист отвечает за корректность этой информации, тогда должна быть уверенность в том, что он не ошибается. Фортран, как базовый язык, на котором должен проводиться такой анализ, препятствует автоматическому обнаружению параллелизма компилятором.

Неизвестно, какие средства могли быть добавлены к языку Фортран, чтобы гарантировать параллелизм и детерминированность поведения всех программ.

Заслуживает внимания еще одно замечание к этой задаче. Недавно эта программа транслировалась для выполнения на четырехпроцессорной вычислительной системе VAX (после прогона более 50 тестов на ЭВМ HEP). После того, как программа выполнилась корректно, были проведены некоторые простые измерения временных характеристик. Во время этого тестирования, приблизительно в каждом из десяти прогонов, результат оказывался с незначительными ошибками. Причина – еще одна ошибка в той же самой секции программы. Эта ошибка находилась в последней версии программы для ЭВМ HEP, но оставалась необнаруженной. Мораль этой истории такова – пока программисты отвечают за организацию в программе всей синхронизации, будет крайне трудно (если вообще, возможно) гарантировать, что все возможные ошибки синхронизации будут устранены.