ZebroidФорумПубличный разделПредложенияАрхивОбучить работать с многоядровыми процами

Обучить работать с многоядровыми процами

20 февраля 2011, 01:00
Зарегистрирован: 12 ноября 2010, 13:31
Здравствуйте

зеброид постоянно грузит проц ток на 50%, одно ядро работает насколько я понимаю... было бы не плохо если бы все ядра умел использовать...

запустил сейчас расстановку меток: 45к статей, по словарю, максимум уник меток для поста, за час прошло 3 процента... медленно(((



20 февраля 2011, 03:43
Зарегистрирован: 10 апреля 2012, 00:00
Действительно очень медленно, сколько меток в словаре?



20 февраля 2011, 05:34
Зарегистрирован: 12 ноября 2010, 13:31
точно не скажу сейчас, процесс только до 43% дошел...

примерно 50-100...



20 февраля 2011, 07:40
Зарегистрирован: 11 июля 2009, 11:46
Тоже на днях заметил при проверки уникальности внутри проекта 10к записей объем текста 12мл.

длина шингла 5

допустимый процент совпадения 40%

Не учитывать слова короче 3х символов

Перемещать в категорию

Всё это дело обрабатывалось очень долго

около 16-20 часов.

Было бы действительно не плохо заставить использовать больше ресурсов компьютера



15 марта 2011, 07:43
Зарегистрирован: 01 марта 2011, 21:29
Тоже сижу, третий час расставляются метки-)) 75% прошло, меток около 100, статей 14К, нагрузка проца: ровно 25% (1 ядро то бишь)



15 марта 2011, 07:58
Зарегистрирован: 10 апреля 2012, 00:00
viewtopic.php?f=7&t=1203



16 апреля 2011, 14:17
Зарегистрирован: 10 апреля 2012, 00:00
Оптимизировал работу расстановщика меток. Теперь даже на одном ядре он работает очень шустро. На проекте в 40к с использованием словаря в 190 меток процесс расстановки меток занял 15 мин 20 сек.



17 апреля 2011, 10:12
Зарегистрирован: 10 апреля 2012, 00:00
Кому интересно: после подключения многоядерности, на этом же проекте при использовании 3 ядер скорость обработки проекта выросла до 3 мин 50 сек. Получилась идеальная реализация при которой каждое задействованное ядро процессора уменьшает время на равную пропорциональную часть.



02 мая 2011, 09:35
Зарегистрирован: 12 ноября 2010, 13:31
а функцию импорта тхт файлов не распараллеливали я так понимаю? уже 4ч импортятся ~300к тхт дошло до 49%...

в настройках выставлял 2 ядра использовать... тоже бы неплохо было бы ускорить это =)



02 мая 2011, 16:51
Зарегистрирован: 10 апреля 2012, 00:00
Нет, потому что отдача будет нулевой. Не все процессы можно делать параллельно, и добавление новых записей к этому относится. Если бы тормозом всего процесса был парсер - то это одно, парсить параллельно несколько файлов можно, но создавать новые записи можно только поочередно, а именно создание записей - это 80% нагрузки во время импорта.