![]() |
![]() |
![]() |
|
Как заставить 1с использовать все ресурсы многоядерного процессора | ☑ | ||
---|---|---|---|---|
0
krasnojrov
06.11.10
✎
18:58
|
Есть задачка написанная на 1с8. Пытался использовать многоядерные процессоры, чтобы быстрее щелкала. Прогресса нет, запускал на одно ядерном(в файловом варианте) - диспетчер задач показывает загрузку ЦП 100%, на 4-х и 8 ядерном(двух процессорном) соответственно 25% и 13%, и диспетчер показывает примерно равномерную загрузку ядер ЦП. Пытался манипулировать, задавал соответствия (диспетчер задач>процессы>1cv8.exe>задать соответствие>ставил флажок на одно ядро)- на графике одно ядро работает по максимуму Загрузка процессора (в целом) не меняется. Что надо делать в в такой ситуации? Тот же RAR прекрасно работает с многоядерными и дает прирост в скорости.
|
|||
1
ДенисЧ
06.11.10
✎
18:59
|
купи/укради у 1с исходники и перепиши.
Тот же 1с-сервер вполне себе использует многоядерность. |
|||
2
Irbis
06.11.10
✎
19:00
|
>> Пытался использовать многоядерные процессоры, чтобы быстрее щелкала.
Вот это как делал? С бубном танцевал? |
|||
3
krasnojrov
06.11.10
✎
19:05
|
Остряки местные, или как?
|
|||
4
ДенисЧ
06.11.10
✎
19:06
|
(3) или клюв у кое-кого отитанился.
|
|||
5
Капитан Смоллет
06.11.10
✎
19:07
|
(0) Чувак, ты нас в выходные решил посмешить?
|
|||
6
DES
06.11.10
✎
19:07
|
Тут главное не мешать операционке.
|
|||
7
krasnojrov
06.11.10
✎
19:07
|
Ставил на сервер(db2 экспресс) - негде посмотреть настройку, в итоге скорость та-же, даже чуть меньше
|
|||
8
Irbis
06.11.10
✎
19:08
|
(3) Куда уж нам, просто в 1С ни в клюшках ни в снеговике не припомню никаких инструкций по этому поводу
|
|||
9
ДенисЧ
06.11.10
✎
19:08
|
(7) ты бы ещё на акссесс поставил...
|
|||
10
krasnojrov
06.11.10
✎
19:10
|
Что тогда ставить надо и как настроить?
|
|||
11
МихаилМ
06.11.10
✎
19:11
|
(0)
1) напишите внешнюю компоненту 2) перенесите проект на другой ЯП с многоПоточностью . скоро будет вопрос, что тот же рар умет задествовать мощности видеоускорителей. как задействовать в 1с. |
|||
12
Irbis
06.11.10
✎
19:12
|
(10) Смирись, лучше вылизывай код. Большинство тормозов из-за неверно заточеных рук программистов.
|
|||
13
Капитан Смоллет
06.11.10
✎
19:12
|
(7) Пиши слезливое письмо генеральному конструктору 1с с просьбой переписать платформу на многопоточность. Единственно тебе уже посоветовали в (1)2
|
|||
14
ДенисЧ
06.11.10
✎
19:12
|
(10) Ставь кошерный мссиквел и на сервере 1с настраивай количество рабочих процессов соответственно количеству процессоров. На ИТС есть соответствующие статьи.
Вкратце - количество процессов == количество процессоров - 2 |
|||
15
ДенисЧ
06.11.10
✎
19:12
|
А клиентская часть не будет работать с многими процессами, пока не сделаешь (1)
|
|||
16
krasnojrov
06.11.10
✎
19:14
|
Михаил, что такое ЯП?
|
|||
17
krasnojrov
06.11.10
✎
19:15
|
То есть в файловом варианте не сделать такое?
|
|||
18
ДенисЧ
06.11.10
✎
19:15
|
оймать... Ты программист или куда?
|
|||
19
МихаилМ
06.11.10
✎
19:16
|
(16) язык программирования.
|
|||
20
krasnojrov
06.11.10
✎
19:17
|
Спасиб
|
|||
21
КМ155
06.11.10
✎
19:21
|
(17) [То есть в файловом варианте не сделать такое]
запусти 8 1с.Exe по шт. на ядро и распараллель задачку |
|||
22
krasnojrov
06.11.10
✎
19:23
|
Ну запустить то я запущу, а как распаралелить?
|
|||
23
krasnojrov
06.11.10
✎
19:25
|
(21)Все, догнал КМ. В принципе можно попробовать.
|
|||
24
Капитан Смоллет
06.11.10
✎
19:26
|
(21) Ага. Поставь Windows Server 2008 R2 HPC. Сделай клауд-вычисления по сетке.. :)
|
|||
25
КМ155
06.11.10
✎
19:33
|
(22) [а как распаралелить]
Оооооо про это тома написаны |
|||
26
Капитан Смоллет
06.11.10
✎
19:37
|
(25) Как однопоточное приложение собираемся распараллеливать? пид-процесс один и тот же. Запись и чтение в базу данных может вызвать конфликт, поскольку система не может отличить пид-процесс, как в лучае клиент-серверного приложения. Для многоядерных процов надо писать спецприложения.
И не надо путать распределение нагрузки с увеличением производительности. |
|||
27
krasnojrov
06.11.10
✎
19:37
|
(25) Спасибо КМ, идея весьма нетривиальная, прикидываю какие задачки распаралелить можно.
|
|||
28
hhhh
06.11.10
✎
19:48
|
можно 1с и rar пустить на разные ядра - вот уже и распараллеливание.
|
|||
29
КМ155
06.11.10
✎
19:50
|
(26) почитай про конвейерные ЭВМ
|
|||
30
Капитан Смоллет
06.11.10
✎
20:11
|
(29) Что читать-то? ОС Винда поддерживает эту архитектуру?
|
|||
31
Живой Ископаемый
06.11.10
✎
20:13
|
(7) божечки, ну и почему же ты подумал что виноват rphost и процессоры? вернее их неиспользование?
|
|||
32
КМ155
06.11.10
✎
20:13
|
(30) не надо путать архитектуру ОС с архитектурой вычислений
|
|||
33
Капитан Смоллет
06.11.10
✎
20:16
|
(32) Тогда что ты предлагаешь человеку в (21)?
|
|||
34
Живой Ископаемый
06.11.10
✎
20:17
|
2(33) над одной базой или разными? если над одной, то что они должны будут делать? ну вот реально, чтобы это пригодилось?
|
|||
35
krasnojrov
06.11.10
✎
20:20
|
(34)над одной, к примеру: документ с 20000 строками разбивать на 4.
|
|||
36
Irbis
06.11.10
✎
20:22
|
(35)А зачем делать документ на 20000 строк, с тем расчетом чтобы потом его разбивать на 4 по 5000. Может сразу делать 4 документа?
|
|||
37
Капитан Смоллет
06.11.10
✎
20:22
|
(34) Да ничего не надо делать, пока однопоточное приложение. ))
в (21) человек предложил РАСПРЕДЕЛИТЬ нагрузку на многоядерном процессоре. Реально увеличить производительность системы можно либо переписав его на многопоточность либо использовать cloud-вычисления (типа фермы Цитрикса). |
|||
38
КМ155
06.11.10
✎
20:27
|
(35)[документ с 20000 строками разбивать на 4]
неудачный пример всё упрётся в блокировки |
|||
39
krasnojrov
06.11.10
✎
20:36
|
(38)Что за блокировки? Я предложил каждый документ обрабатывать на своем ядре в отдельном 1cv8.exe одновременно.
|
|||
40
КМ155
06.11.10
✎
20:39
|
(39) [Что за блокировки]
Рг |
|||
41
krasnojrov
06.11.10
✎
20:41
|
Как расшифровывается Рг?
|
|||
42
Капитан Смоллет
06.11.10
✎
20:42
|
Ну что вы мучаетесь, давно уже г.но:
http://www.google.ru/search?client=opera&rls=ru&q=многопоточность+1С&sourceid=opera&ie=utf-8&oe=utf-8 |
|||
43
КМ155
06.11.10
✎
20:42
|
(41) Регистры
|
|||
44
Капитан Смоллет
06.11.10
✎
20:44
|
||||
45
КМ155
06.11.10
✎
21:07
|
(44) bing забыл
|
|||
46
Живой Ископаемый
06.11.10
✎
23:13
|
2(35) И? - ну вот ты разбил такой документ на 4 и что дальше? в какой момент тебе поможет то, что приложение будет использовать 4 процессора вместо 1?
|
|||
47
Живой Ископаемый
06.11.10
✎
23:15
|
В момент записи их в базу? Так о какой производительности ты говоришь применительно к базе данных? Что в 1С выполняется дофига чисто математических вычислений без записи в базу? Разве что в каком-нибудь РАУЗе?
|
|||
48
Живой Ископаемый
06.11.10
✎
23:23
|
2(39) вот что произойдет когда все четыре "Я предложил каждый документ обрабатывать на своем ядре в отдельном 1cv8.exe одновременно." документа обработаются? Ты уже замерял на что расходуется время при обработке документов?
|
|||
49
krasnojrov
13.11.10
✎
20:09
|
Попробовал, вот что получилось: Система-Win2008, двухпроцессорный сервер с 8 ядрами. Документ 20809 строк. Запускал 4 копии документа на 4 приложениях(на каждое приложение свой документ). Первая попытка с заданными соответствиями(каждое приложение на своем ядре) - время работы: 10:36:24 10:32:02 10:37:38 10:45:00, в среднем 10:37:46. вторая попытка без задания соответствий время работы: 11:54:26 11:32:44 12:39:47 11:45:33, в среднем 11:58:08, то есть используя соответствия получаем 11% быстродействия. Быстродействие по сравнению с запуском задачи на одном приложении увеличивается кратно!!!
Эта задачка(10 часов работы) не сильно напрягала меня, на ночь оставишь - утром все сделалось. Следующая задачка - в справочнике 188000 элементов надо найти каждому элементу соответствие в других справочниках(10, к-во элементов 16000), без "мероприятий" грозится работать за 90 часов, оптимизацией кода должно быть 24 часа(не успею доделать), вся надежда на распаралеливание и большую "считалку" |
|||
50
Immortal
13.11.10
✎
20:38
|
мне кажется про справочники - один, ну максимум 2 запроса
90 часов - много. |
|||
51
krasnojrov
13.11.10
✎
20:56
|
от 30 до 300
|
|||
52
Immortal
13.11.10
✎
20:59
|
(51)это перебором что ли?
|
|||
53
krasnojrov
13.11.10
✎
21:03
|
4 запроса крутятся
|
|||
54
Immortal
13.11.10
✎
21:07
|
жираф большой, ему видней,)
|
|||
55
krasnojrov
13.11.10
✎
21:19
|
И не говори, кума...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |