powered by simpleCommunicator - 2.0.27     © 2024 Programmizd 02
Map
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ускорить умножение квадратных матриц (продолжение темы с mutex)
25 сообщений из 165, страница 3 из 7
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40107747
mayton
Я просто хотел баб-зайчику показать как глубоко можно углубиться в задачу и где параллелизм полезен и где лишняя коннкуренция вредна.

параллелизм - ок, конкуренция - ниок. Ясно. Понятно.
Хотя при перемножении матриц в A и B тоже могут писать, ну да ладно...
В итоге весь контейнер блочится мьютексом на чтение И на запись?
Или самый идеал - множество контейнеров вместо одного?
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40107752
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчикВ итоге весь контейнер блочится мьютексом на чтение И на запись?

Контейнер не блочится. Блочится мутекс. А чем занимается его владелец - сугубо
его личное дело.

бабушкин зайчик
Или самый идеал - множество контейнеров вместо одного?

Идеал - отсутствие конкуренции. Как он достигается - сугубо всё равно.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40107767
Dimitry Sibiryakov, в смысле контейнер не блочится, если никто к нему доступа не имеет, кроме хозяина?
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40107793
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дословно. Перечитай моё сообщение ещё раз. Любой может доступиться к контейнеру
если не будет предварительно пытаться заблокировать мутекс, наплевав на мнение
его хозяина.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108240
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
В итоге весь контейнер блочится мьютексом на чтение И на запись?
Или самый идеал - множество контейнеров вместо одного?
какие то узкие решения.
Не везет тебе с архитектурой.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108244
критикуешь - предлагай
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108245
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
критикуешь - предлагай

вам выше давали ссылку что любое блокирование это компромисс.
Вы её не читали.
Компромиссы не очертили и не согласились "что-то терять при установке блокировки".
Итог - пустой тред о погоде.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108255
выше ты мне дал ссылку на блокировки в БД
нахрена мне читать очередную статью про ACID и блокировки транзакций?
я с БД работаю уже 10+ лет, я разве про БД тут спрашиваю?
ты когда начнёшь по теме что-то говорить, а не умного из себя строить?
выцепил первую попавшую ссылку из гугла со словом "блокировки" и тычет мне её
уйди отсюда.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108257
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчикя с БД работаю уже 10+ лет

Если за это время до тебя не дошло, что блокировки и их применение везде
одинаковое - забей, займись чем-нибудь попроще.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108259
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
выше ты мне дал ссылку на блокировки в БД

смотрим:
22388622
авторТак чем же придется пожертвовать при использовании стратегии высокого параллелизма?
Параллелизм это не про БД.))
бабушкин зайчик
ты когда начнёшь по теме что-то говорить, а не умного из себя строить?

А кто тебя в теме поддержал? )))
Буквально все в теме сказали: "Борис ты не прав".
Вот твои слова:
бабушкин зайчик
В итоге весь контейнер блочится мьютексом на чтение И на запись?

Какой ВЕСЬ контейнер Карл?

бабушкин зайчик
Или самый идеал - множество контейнеров вместо одного?

ИДЕАЛ - ВЫСОКИЙ ПАРАЛЛЕЛИЗМ И ОТСУТСТВИЕ БЛОКИРОВОК.
ДОШЛО?
По архитектуре у тебя двойка - нет идеала в архитектуре.
Иди в школу.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108260
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
бабушкин зайчикя с БД работаю уже 10+ лет

Если за это время до тебя не дошло, что блокировки и их применение везде
одинаковое - забей, займись чем-нибудь попроще.
+1
Можно кодировать успешно. А можно программировать.
Вот во втором случае и решаешь каждый абзац кода с компромиссами.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108274
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
выше ты мне дал ссылку на блокировки в БД
нахрена мне читать очередную статью про ACID и блокировки транзакций?
я с БД работаю уже 10+ лет, я разве про БД тут спрашиваю?

Почитай про NoSQL, весь этот зоопарк недоБД родился чтобы ACID обойти. Еще Теорема CAP . Может какие мысли появятся как их идеи применить в твоей задаче.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108290
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С пессиместичной блокировкой вроде все разобрались. Блочим. Читаем-пишем. Разблокируем
обратно. Всё уныло и понятно.

С оптимистичной что? Есть моё наивное предположение что она будет дешевле
но только при условии что читателей - статистически будет больше.

Пропорцию я могу предложить пареттовскую. На 20% писателей которые бьют по
блокировке - будет 80% читателей которые тоже ее бьют но контейнер при этом
не меняют.

Я не могу придумать алгоритм или какой-то стресс-тест чтобы явно показать преимущества
но на ум приходит Convays-Life на двумерном поле.

Потоки (штук 4-16) читают и пишут состояние ячеек. Причем по алгоритму конвея
надо читать 8 соседей чтобы установить свою одну ячейку.

Мне почему-то кажется что Жизнь Конвея будет эффективнее работать при
оптимистичных блокировках.

И если сердитый зайчик реализует оптимистик-режим то из сердитого
он может стать нормальным зайчиком.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108295
PetroNotC Sharp
Какой ВЕСЬ контейнер Карл?


вот этот:
Dimitry Sibiryakov
бабушкин зайчикпоэтому мне по 5 раз приходится спрашивать, как же правильно с контейнером
работать конкурентно

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

Dimitry Sibiryakov
бабушкин зайчикя с БД работаю уже 10+ лет

Если за это время до тебя не дошло, что блокировки и их применение везде одинаковое - забей, займись чем-нибудь попроще.
а ты вообще в показаниях путаешься, тебя спрашивают про контейнеры, но ты отмазываешь БД, которая "не твоя проблема"
Dimitry Sibiryakov
бабушкин зайчикЯ тебе описал реальный пример, как ты его без mutex решать хочешь?

Заявлю "это проблема СУБД, не моя" и вообще mutex использовать не буду по причине, описанной выше.
не будет он mutex использовать...
или только mutex будет использовать...
FastCGI туда приплёл... ты же даже не вникаешь в вопрос.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108296
Dima T
бабушкин зайчик
выше ты мне дал ссылку на блокировки в БД
нахрена мне читать очередную статью про ACID и блокировки транзакций?
я с БД работаю уже 10+ лет, я разве про БД тут спрашиваю?

Почитай про NoSQL, весь этот зоопарк недоБД родился чтобы ACID обойти. Еще Теорема CAP . Может какие мысли появятся как их идеи применить в твоей задаче.

вообще-то я смотрю в сторону CQRS
(щас вышепроцитированные товарищи совсем потеряются)
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108299
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
Dima T
пропущено...

Почитай про NoSQL, весь этот зоопарк недоБД родился чтобы ACID обойти. Еще Теорема CAP . Может какие мысли появятся как их идеи применить в твоей задаче.

вообще-то я смотрю в сторону CQRS
(щас вышепроцитированные товарищи совсем потеряются)
теорему САР уже прошел))))
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108300
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
PetroNotC Sharp
Какой ВЕСЬ контейнер Карл?


вот этот:
Dimitry Sibiryakov
пропущено...

Ну ок, раз ты хочешь абсолютного и простого ответа, получи: с контейнером надо работать в эксклюзивном режиме, под мутексом и никак иначе.

нафиг я тебя читаю вообще :закрытьлицоладошкой:
уходи говорю.

Dimitry Sibiryakov
пропущено...

Если за это время до тебя не дошло, что блокировки и их применение везде одинаковое - забей, займись чем-нибудь попроще.

а ты вообще в показаниях путаешься, тебя спрашивают про контейнеры, но ты отмазываешь БД, которая "не твоя проблема"
Dimitry Sibiryakov
пропущено...

Заявлю "это проблема СУБД, не моя" и вообще mutex использовать не буду по причине, описанной выше.

не будет он mutex использовать...
или только mutex будет использовать...
FastCGI туда приплёл... ты же даже не вникаешь в вопрос.
один флуд
... Зачем слушаю...
... Ты не вникаешь...
... Отмазываешь...
Ты точно инженер?
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108301
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Снимаю шляпу героическим попыткам повернуть топик к ТЗ или коду.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108303
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
mayton
Я просто хотел баб-зайчику показать как глубоко можно углубиться в задачу и где параллелизм полезен и где лишняя коннкуренция вредна.

параллелизм - ок, конкуренция - ниок. Ясно. Понятно.
Хотя при перемножении матриц в A и B тоже могут писать, ну да ладно...
В итоге весь контейнер блочится мьютексом на чтение И на запись?
Или самый идеал - множество контейнеров вместо одного?

В данном случае вообще ничего не надо блочить, это и есть идеал распараллеливания, просто раздать потокам задания кто какой элемент результата считает и готово.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108308
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,
Совершенно верно.
Это раздать потокам работу.
Там подтянется позже менеджер потоков, пул потоков,...
А мембер мыслит узко в терминах "расшарить контейнер" ака "глобальная переменная".
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108311
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton wroteС *оптимистичной* что? Есть моё наивное предположение что она будет дешевле
но только при условии что читателей - статистически будет больше.

Вопрос не в количестве, вопрос в качестве. Если зайчиков "контейнер" это
std::vector, а читатели достают один его элемент по индексу, то накладные
расходы на оптимистичную блокировку превысят таковые на пессимистичную при любом
количестве читателей.

У Жизни есть неочевидная особенность: новое состояние поля должно складываться в
новое поле, а старое состояние только читается. Поэтому как и в случае
перемножения матриц никакие блокировки не нужны от слова "совсем" (при условии
статичности целевого поля).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108313
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще пару постов, и mvcc будет изобретен в очередной раз повторно, после первого изобретения в 1978 году.
Но там вполне допускается и наоборот.
Новое значение состояния пишется в старое поле, а старое значение уходит в новую историю состояний.
Как показывает Oracle, на живом собственном примере - тоже вполне удачный вариант (попробуй обгони).

Говорят, что любая из известных к настоящему моменту, и используемых в бд схем обслуживания concurrency,
в комбинации с параллельностью поступающих запросов, масштабируется в весьма ограниченном диапазоне конкурирующих запросов.

Кто-то лет 15-20 назад моделировал для классических disk oriented систем, что в любом случае, в районе 1000 процессов, какие схемы
ни катай, возникает гарантированный stop the world.

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

Что интересно, по какому-то совершенно случайному совпадению, число ядер в современных серверных процессорах
(~64 физических) практически совпадает с максимумом пропускной способности произвольной схемы обеспечения concurrency,
которая в тогда была оценена где-то в 128 конкурирующих процессов для любой схемы.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108314
Dima T
В данном случае вообще ничего не надо блочить, это и есть идеал распараллеливания, просто раздать потокам задания кто какой элемент результата считает и готово.

Dimitry Sibiryakov
Поэтому как и в случае перемножения матриц никакие блокировки не нужны от слова "совсем" (при условии статичности целевого поля).

если там нет никаких потоков (которые пишут в A/B), то какой интерес вообще в этой задаче?
Что там решать то, и что она делает в теме с mutex?
Многопоточно сложил всё в раздельные строки (массивы) для C и собрал матрицу.
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108324
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
Dima T
В данном случае вообще ничего не надо блочить, это и есть идеал распараллеливания, просто раздать потокам задания кто какой элемент результата считает и готово.

Dimitry Sibiryakov
Поэтому как и в случае перемножения матриц никакие блокировки не нужны от слова "совсем" (при условии статичности целевого поля).

если там нет никаких потоков (которые пишут в A/B), то какой интерес вообще в этой задаче?
Что там решать то, и что она делает в теме с mutex?
Многопоточно сложил всё в раздельные строки (массивы) для C и собрал матрицу.
просто трудно забыть твой тред в той теме 22388433 .
То контейнеры, то запросы, то http server 22389971
Mayton тебе доказал что конкуренция и блокировка Г... а параллелизм здорово.
Ты же споришь))))
...
Рейтинг: 0 / 0
Ускорить умножение квадратных матриц (продолжение темы с mutex)
    #40108339
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может Конвей - неудачный пример?

Давайте численные методы.

Кстати даже сам факт того что мы не можем придумать hiload задачу c интенсивным использованием разделяемых переменных говорит о том что сама постановка .. слишком натянута что-ли.
...
Рейтинг: 0 / 0
25 сообщений из 165, страница 3 из 7
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ускорить умножение квадратных матриц (продолжение темы с mutex)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (0):
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]