English | 中文 | Русский | Français
342 Тем для обсуждения
3,542 Открытых обсуждений
Поделитесь своими идеями о распараллеливании любых приложений: от игр до финансовых систем. Несколько ядер лучше чем одно! Вопрос в том - насколько лучше?
Хочется рассказать об одной ошибке, которую легко может допустить человек еще мало знакомый с технологией OpenMP. Ошибка связана с неверным представлением о работе директивы atomic.
В соседней записи Долой летнее время обсуждается пара вопросов поднятых Дмитрием Медведевым в своем Послании федеральному собранию. В этом послании поднимается и другая более близкая нам тема об использовании суперкмопьютеров: И, наконец, пятая приоритетная задача - развитие стратегических и информационных технологий. В России должен быть в полном объёме задействован потенциал суперкомпьютеров, суперкомпьютерных систем, которые объединены высокоскоростными [...]
В 50-е годы прошлого века Алан Тьюринг в своей знаменитой работе «Могут ли машины мыслить?» предложил игру в имитацию. Суть в том, что в одну комнату помещают машину, в другую человека, и если нельзя распознать, кто где, то дается положительный ответ на заданный вопрос. А можем ли мы по аналогии ответить, какая машина, параллельная или последовательная, находится в комнате?
Итак, что интересного, хорошего и плохого нашел я в этом языке, просидев с ним несколько дней?
Я начал подозревать неладное, когда появился онлайновый почтовый клиент и сервер одновременно Gmail. Подозрения усилились с запуском онлайновых офиса и переводчика. После анонса "андроида" не спал всю ночь, думал о виртуальном Big Brother'е. Браузер Chrome поставил на компьютер в первый же день, потому что все уже было понятно. Выход Google Wave воспринял, как грубые ласки перед массовой виртуальной лоботомией...
Хочу поделиться своими впечатлениями о первом в русскоязычном сообществе онлайн-семинаре от Intel. Вебинар назывался “Intel® Parallel Studio workflow” и был посвящен одному из подходов к распараллеливанию и оптимизации последовательных приложений, на примере трассировщика лучей Tachyon.
Задавшись в комментариях к записи "33 шага назад" вопросом, каким образом введение параллелизма может поменять асимптотические характеристики алгоритма, я должен был быстрее догадаться, каков правильный ответ.
Если доверять классикам, то иногда нужно сделать шаг назад, чтобы потом - два шага вперед. А что же в параллельном программировании? Куда мы шагаем, что и в чем выигрываем? Чтобы легче было шагать, нам в помощь дадены разнообразные средства для параллельного программирования – языки, библиотеки и т.п. Обратим свой взгляд на библиотеку Intel® TBB (Intel® Threading Building Blocks) и посмотрим, куда она нас приведет.
Мы привыкли слышать утверждения, что параллельные методы показывают плохую эффективность, а хорошие последовательные алгоритмы плохо распараллеливаются. Доказываем обратное на примере задачи коммивояжёра с отсечением по методу ветвей и границ.
Лично для меня из новинок в Mac OS X 10.6 Snow Leopard наиболее интересна задаче-ориентированная (во, загнул) технология параллельного программирования Grand Central Dispatch (GDC). GCD предлагает разделять весь выполняемый код на независимые задачи (tasks) и помещать их в очереди, откуда они запускаются при наличии свободных ресурсов. Если в числе свободных у нас числятся 4 ядра, то одновременно [...]