LINUX.ORG.RU

Параллельные технологии

 , , , ,


11

5

По договорённости с редакцией Linux Format выложил в открытый доступ цикл статей по параллельному программированию, которые были опубликованы в журнале с февраля по июль этого года.

Кратко рассмотрены пакетные (batch) системы, MPI, CUDA, OpenCL и примеры работы с кластерами. Также во введении есть сопутствующее мини-интервью с Романом Троганом из Parallela.

P.S. Если будет интерес, то начну процедуру выкладывания исходников статей под открытой лицензией.

>>> Сами статьи

★★★★★

Проверено: DoctorSinus ()

Ответ на: комментарий от Const

о которой уже лет 15 говорили, но никто не выпускал: (очень)многоядерные CPU возможны и прекрасно работают.

Спасибо, кэп. Все это было и до intel.

devl547 ★★★★★ ()
Ответ на: комментарий от devl547

Нет. Серия закончилась. Летом у меня началась запарка, которая продолжается до сих пор.

С другой стороны. Если найдётся желающий написать что-то ещё достаточно активный, то её можно продолжить.

Evgueni ★★★★★ ()
Ответ на: комментарий от Const

есть конечно,но есть нелинейные и трехмерные.Для каждой задачи есть соответствующий метод,но для такого же метода существует множество задач с помощью которого их можно решить.Однозначность и многозначность,если короче.Все зависит от матрицы и других параметров.Хорошо на том,что есть такие методы которые погрешность убирают в порядки.Но чаще это не всегда.

keekdown ()
Ответ на: комментарий от loz

Эрланг хорош на «очень параллельных» системах вроде кластеров и суперкомпьютеров. На писи с двумя-четырьмя ядрами туча процессов которые он порождает и механизм его обмена сообщениями дают тормоза, которые сильнее ускорения которое дает его параллельность. Он не униварсален. Для писи нужны другие способы параллелить, имхо.

Aswed ★★★★★ ()

P.S. Если будет интерес, то начну процедуру выкладывания исходников статей под открытой лицензией.

Интерес есть

cvs-255 ★★★★★ ()
Ответ на: комментарий от keekdown

Хуже то, что на алгоритм, убивающий погрешность на порядок, надо зачастую угрохать заметный кусок жизни. Потому всегда встаёт сложный вопрос: мы хотим считать много и быстро, но ПОТОМ, или медленно и мало, но СЕЙЧАС. И дай нам сил определить, закончится СЕЙЧАС до ПОТОМ, или после ;)

Const ()
Ответ на: комментарий от Evgueni

Ошибок не должно быть не только в программе, но и во всей системе, включая железо, питание, сеть и прочее.

loz ★★★★★ ()
Ответ на: комментарий от devl547

Замечательно. Проблема в том, что MIPS для числодробилен (а я с этой своей колокольни смотрю) потеряна вместе Silicon Graphics. К сожалению, ибо конкуренция желательна тут.

Const ()
Ответ на: комментарий от Const

MIPS для числодробилен

Для числодробильни в 99% случаев нужен gpu и opencl. Плюс еще надо посмотреть, что приплывет вместе с HSA

// Кстати, забыл китайцев с Godson-T. Правда его не купить.

devl547 ★★★★★ ()
Последнее исправление: devl547 (всего исправлений: 1)

!!! Кстати, если у кого-то есть идеи на тему продолжения цикла и ему есть что сказать, то можно скооперироваться.

Evgueni ★★★★★ ()
Ответ на: комментарий от Const

потому что надо сразу на OpenCL писать, а не портировать откуда-то.

Ну и опять же, ждем HSA. Обещают заметно более простой код и прозрачные вычисления на GPU.

devl547 ★★★★★ ()
Ответ на: комментарий от Const

То, что Фортран исключили из программы ВУЗов в РФ, в том числе и на математических и физических факультетах — это беда.

Это не беда, радоваться надо! Фортран 90/95 - это набор рутин, поддержка которых не сертифицирована, кто как хочет, так и реализует. В итоге получаем ад, когда неизвестно, что делает компилятор, и каждый компилятор делает на свой лад. Coarray из Fortran 2008 - ту да же, в стандарте сказано, что должно быть, а как оно будет - nobody cares. Вот и получится очередное УГ.

iVS ★★★★★ ()
Последнее исправление: iVS (всего исправлений: 1)
Ответ на: комментарий от devl547

Для числодробильни в 99% случаев нужен gpu и opencl.

Не факт, совсем не факт. Процентов для 70 максимум (и то по причине доступности и дешевезны gpu). И то cuda нужнее в таких задачах (вроде молекулярной динамики, обработки изображений или быстрые строковые алгоритным и всякие графы).

DNA_Seq ★★☆☆☆ ()
Последнее исправление: DNA_Seq (всего исправлений: 2)

Спасибо. Мне как бы и не надо, но для общего развития прочту.

P.S. Это только меня раздражает эта вёрстка тяп-ляп? Читаешь про код «Жизни» и тут текст разрывается баннером с классификацией архитектур. Нынешние редакторы совсем не могут в связное повествование?

aidaho ★★★★★ ()
Последнее исправление: aidaho (всего исправлений: 1)
Ответ на: комментарий от aidaho

Это обычная журнальная вёрстка. С точки зрения рядового верстальщика: текст — это такое серое скучное поле, которое нужно разбавить яркими пятнами, да побольше, побольше. :) Утрирую, но не сильно.

Evgueni ★★★★★ ()
Ответ на: комментарий от iVS

Fortran 2008

А в фортране уже работает автоматическое освобождение памяти, например как в Java?

anonymous ()
Ответ на: комментарий от anonymous

Брюн — редиска, усыпил сообщество, которое выдало ему кредит доверия за paw/cernlib, и увёл всех в лапы зверя :( А сейчас уже деваться некуда. Потому и говорю, так как знаю что это.

Evgueni ★★★★★ ()
Ответ на: комментарий от devl547

Это какой-то бред на уровне Игромании. Вы сами хоть что-нибудь полезное напрограммировали ?
ИМО нужны специализированные решения. Вот взять тот же биткойн: как вы думаете, сколько FLOPS выдаёт топовый ASIC для него ? И сколько мегахешей выдаст первый же из top500 ?

anonymous ()
Ответ на: Исходники от StRel123

Если руки дойдут, то для первых трёх статей выложу в выходные. Остальные по мере того, как будет истекать пол года с момента публикации.

Да, исходники не журнальных статей — просто текст, причём без вычитки, как в других аналогичных моих проектах.

Evgueni ★★★★★ ()
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от drSchur

С научно-популярной в разы хуже. Тупо платят в разы меньше при гораздо более сложных текстах. Уровень для сохранения вменяемого качества требуется выше. Я осилил несколько текстов на голом энтузиазме (хотя с одного получил весьма неслабый профит, но это была удача, которая не повторяется и у отца один клиент появился через мой текст про газоанализаторы) и перестал в этом направлении тыкаться.

Сейчас меня хватает только изредка на вопросы отвечать вида: http://www.copah.info/public-reception?page=1

Evgueni ★★★★★ ()
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от loz

По надежности 100%: либо данные умещаются в раме, либо нет. Корректно написанный код всегда отработает одинаково.

anonymous ()
Ответ на: комментарий от shamaz

На фре даже нет MPI? Не, не верю — что тогда один фрёвый компьютер в топ500 делает? Неужели красуется, а не считает?

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

Ты лучше не мне эти вопросы задавай. Я opencl пытался ставить - не судьба. Смысл таков - что если это железозависимо и непортабельно, то во фре этого возможно нет.

shamaz ()
Ответ на: комментарий от shamaz

OpenCL — это открытый стандарт с имеющимися свободными реализациями портированных на кучу платформ с поддержкой широкого спектра железа. Ничто не мешает написать сообществу BSD свою реализацию.

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

То есть чтобы заставить мою видеокарточку выполнять мою программу даже не надо какого-нибудь специального модуля от nvidia? Я хз, может там ядро надо сильно менять.

Я бы освоил параллельность на CPU, большего мне не надо.

shamaz ()
Ответ на: комментарий от shamaz

В случае Nvidia надо, причём скорее всего закрытый. Я не знаю как там с поддержкой в свободном драйвере. Берите в следующий раз AMD или Intel.

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

Так что для увеличения производительности придётся освоить параллельные технологии.

Так что для увеличения производительности придётся оптимизировать код.

За фикс можно не благодарить.

dzidzitop ★★ ()
Ответ на: комментарий от Policeman

нет ни одного однопроцессорного одноядерного суперкомпьютеа.

P200MMX был бы таковым даже в 80х

dzidzitop ★★ ()
Ответ на: комментарий от Evgueni

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

FriendshipIsMagic ()
Ответ на: комментарий от FriendshipIsMagic

А MOSIX разве не дал дуба?

P.S. Если нужно 1-2 машины, то проблем нет. Сложности начинаются когда тебе нужна сотня-другая, причём надёжно работающая.

Evgueni ★★★★★ ()

Спасибо, по работе не нужно мне, но для развития очень интересно.

sambo ()
Ответ на: комментарий от Evgueni

Судя по http://freecode.com/projects/mosix наличию новостей за 2013 год, пока жив. Насколько жизнеспособен на сотнях машин не скажу. Что мне в их походе понравилосьбы(насколько знаю это не так), то что решение о том как масштабировать принимается после запуска программы. В отличии от всех других систем где все надо решить заранее. Тоесть пускаешь какието задачи на десктопе, они както считают, потом встречается задача посложнее и в процессе приходит понимание что процесс затянулся, берешь подключаешь кластер, выключаешь комп, задача мигрирует на кластер и идешь спать, а утром все готово и результат автоматом переносится на десктоп. Както так я представляю работу с кластером, его должно быть не видно.

FriendshipIsMagic ()
Ответ на: комментарий от Evgueni

Тупо платят в разы меньше при гораздо более сложных текстах.

Ориентация на масс-культуру.

http://www.copah.info/public-reception?page=1

Интересно. А это инициатива чья-то или сверху спустили?

это была удача

Да, у меня, бывает, идут статеечки на темы прикладной социологии, хотя я не социолог :-) Профита на копейки, чисто для отдохновения души.

drSchur ★★★ ()
Ответ на: комментарий от drSchur

Да, у меня, бывает, идут статеечки на темы прикладной социологии, хотя я не социолог :-)

Ну и зачем морочить людям голову, если ты не специалист?

anonymous ()
Ответ на: комментарий от anonymous

С чего ты решил, что я морочу людям голову?

«Не специалист», в смысле - диплом из другой области знаний.

drSchur ★★★ ()
Ответ на: комментарий от loz

А корректно сдохшее железо?

Выкинь его нахуй и поставь несдыхающее.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.