![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]() Цитата:
Процессоры, ядра и потоки. Топология систем.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 16.02.2016 в 10:39. |
|
![]() |
![]() |
![]() |
#12 | |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Цитата:
По хорошему же в многопоточном приложении есть пул потоков, которому просто скармливается картинка, а пул сам разбирается - выделить ли ещё работников или занять делом бездельников. Последний раз редактировалось Человек_Борща; 16.02.2016 в 10:32. |
|
![]() |
![]() |
![]() |
#13 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]() Цитата:
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
![]() |
![]() |
![]() |
#14 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 16.02.2016 в 11:41. |
|
![]() |
![]() |
![]() |
#15 | |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#16 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]()
Да я вообще не об этих злосчастных 100 потоках. Пусть их будет 1, 10, 100 или 1000. Я о том, что это логические потоки, а ядра их выполняют по мере освобождения. Один и тот-же поток, в разные промежутки времени, может выполняться на разных ядрах. Причём, выполняется только временнОй квант, а не весь поток в целом. И давай прекратим (оба) ставить друг-другу оценки. Прикол-приколом, но это уже не смешно.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
![]() |
![]() |
![]() |
#17 | ||
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Цитата:
Я бы вообще организовал пул с очередью данных, где пул содержит 8 потоков, где каждый получает 1/8 файла, а так же пул содержит очередь данных где уже все разбито по 1/8, а потоки только занимают обработкой своего куска и выдают результат. А если продумать так, что потоки не ждут своих братьев, а обработал кусок и выставил бит в 0 или 1 и пошел дальше, вообще летать все будет. Цитата:
СУБД позаботится о быстрой выборке данных, а транзакции обеспечат быструю запись в файл независимо от кол-во данных (50 млн. строк данных, транзакцией записывается примерно за 3-5 сек.). На счет Код:
Последний раз редактировалось Человек_Борща; 16.02.2016 в 13:32. |
||
![]() |
![]() |
![]() |
#18 | ||
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Smitt&Wesson
Цитата:
Потоки сродни задачам. Но не равны им. Разница хорошо показано в книге: Там одна глава посвещена задачам другая потокам. К. Хьюз, Т. Хьюз-Параллельное и распределенное программирование с использованием C++-Вильямс (2005).djvu Один поток может выполнять много задач. К примеру при помощи очереди команд(задач). Цитата:
Там прекрасно рассказано почему потоки не могут спать спокойно. Что касается 650 поток в системе, то подели их на 50 процессов получишь 13 потоков на процесс. Что вполне уживается. Но как только потоков становиться около 100 в одном процессе, то они начинают мешать друг другу. Притом так, что производительность падает ниже случая последовательного исполнения задач. Тест на 2хпроцессорной системе времён 200х годов. ![]() Наибольшую производительность показывает числе потоков 2 и правильной архитектуре программы.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
||
![]() |
![]() |
![]() |
#19 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]()
Ха-ха-ха. Насмешил
![]() ![]() Но, если говорить о МАКСИМАЛЬНОМ быстродействии. Винду, нужно полностью исключить из процесса (её супервизор, имеет привилегированный статус). Исключить запросы прерываний и ПДП. Что остаётся? А ни чего не остаётся. Остаётся аппаратная часть без нифига. Пишем под неё на Асме, всё, что пожелаем. Без супервизора, да. Остаётся два ядра. Организуем на каждое по потоку (который уже и не поток). Просто грузим эти два ядра своими кодами. И получаем, полную Ж проблемм, зато можем сказать - Во! Я добился максимального быстродействия!
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 16.02.2016 в 14:28. |
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 01.09.2013
Сообщений: 83
|
![]()
Блин, ну и срач вы тут развели... Сори за оффтоп. Тему можно наверно закрывать.. Буду писать дальше. И кстати... Как организовать пул из изображений без критической секции?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нейросети | stdensa | Фриланс | 1 | 11.10.2014 17:23 |
нейросети в делфи. | annuchka | Помощь студентам | 0 | 23.12.2013 17:51 |
нейросети С# | Екатерина777 | Помощь студентам | 0 | 18.12.2012 22:01 |
Нейросети | Kuzma_ua | Общие вопросы C/C++ | 0 | 04.02.2011 00:57 |
Scilab + нейросети | dox07 | Помощь студентам | 0 | 08.01.2011 18:28 |