|
Почему 1С не поддерживает параллельные процессы (многоядерность) | ☑ | ||
---|---|---|---|---|
0
Joshim
13.09.12
✎
17:09
|
Кто что думает по этому поводу?
|
|||
1
GROOVY
13.09.12
✎
17:10
|
Потому что гладиолус!
|
|||
2
ДенисЧ
13.09.12
✎
17:10
|
Потому что её писали не настолько умные люди, как ты.
Подходит ответ? |
|||
3
Kreont
13.09.12
✎
17:11
|
А зачем, вся тяжелая логика должна работать/обрабатываться не на 1С а на сервере (постгрес, МССЮЛ) и т.д., вопрос к ним.
|
|||
4
Joshim
13.09.12
✎
17:11
|
(2) нет
вот сижу жду пока журнал регистрации думает уже минут 5, при этом одно ядро простаивает |
|||
5
AaNnDdRrEeYy
13.09.12
✎
17:11
|
сервер поддерживает, rphostы крутятся на разных ядрах
|
|||
6
МихаилМ
13.09.12
✎
17:12
|
вчера такая же тема была
|
|||
7
Joshim
13.09.12
✎
17:14
|
(3) у СУБД задачи предоставить данные, а к обрабатыванию данных СУБД никакого отношения не имеет
|
|||
8
Joshim
13.09.12
✎
17:14
|
(6)дайте ссылку пожалуйста
|
|||
9
Лефмихалыч
13.09.12
✎
17:15
|
(0) нахрена, например, тонкому клиенту многоядерность?
|
|||
10
Alex S D
13.09.12
✎
17:15
|
||||
11
МихаилМ
13.09.12
✎
17:15
|
||||
12
Joshim
13.09.12
✎
17:15
|
(5)(9) а как насчет обработки проведения по партиям, которая на одном ядре может сутками выполняться?
|
|||
13
МихаилМ
13.09.12
✎
17:16
|
(9)
для предобработки загружаемых данных. |
|||
14
Лефмихалыч
13.09.12
✎
17:16
|
(12) будь мужиком, оптимизируй, блеать
|
|||
15
Kreont
13.09.12
✎
17:16
|
(0) Давай назови какие знаешь программы, что поддерживает параллельные процессы (многоядерность) ?
|
|||
16
AaNnDdRrEeYy
13.09.12
✎
17:16
|
(12) потому что она на клиенте.
|
|||
17
Лефмихалыч
13.09.12
✎
17:17
|
(13) какая религия мешает это делать на сервере?
|
|||
18
1C-band
13.09.12
✎
17:17
|
Действительно, при операциях ввода-вывода быстродействие процессора является самым "узким" местом и простаивание ядра ОЧЕНЬ критично. )))
|
|||
19
Kreont
13.09.12
✎
17:17
|
Проведение если долго, то ето не в ядрам проблема а в коде, или в скорости работы как раз сервера БД
|
|||
20
eduspec82
13.09.12
✎
17:17
|
много потоков = лицензирование по потокам
1с ЖАДНЫЕ да и логика движка сложнее гыгыгыг |
|||
21
Gromover
13.09.12
✎
17:18
|
Так как в 1с приоритет на Клиент-Серверный вариант то там все было построено на блокировках данных базы, а если они будут обращаться то будут вылетать баги.
|
|||
22
AaNnDdRrEeYy
13.09.12
✎
17:19
|
(17) в 8.2 для этого нужно передать контекст формы. а если канал слабый то лутше обрабатывать на клиенте и вызывать безконтекстные методы сервера.
|
|||
23
Kreont
13.09.12
✎
17:19
|
Запусти Оперу, ядра простаивать не будут :)
|
|||
24
rs_trade
13.09.12
✎
17:19
|
(12) ты правда думаешь что долго из за одного ядра?
|
|||
25
ЧашкаЧая
13.09.12
✎
17:19
|
(4) Журнал регистрации простой текстовик, как вы себе представляете чтение текстовика в два и больше потоков?
(15) Гугл хром |
|||
26
Joshim
13.09.12
✎
17:21
|
(16) на сервере то же самое, не будет одна обработка использовать больше одного ядра
|
|||
27
rs_trade
13.09.12
✎
17:22
|
(26) как напишешь
|
|||
28
МихаилМ
13.09.12
✎
17:23
|
(13)
религия практики проектирования системп распределенных вычислений. |
|||
29
Kreont
13.09.12
✎
17:24
|
(25) Про Гугл хром, не угадал: он тупо запускает каждую вкладку в отдельном процессе, а не например обработку загрузки и показа одной страницы на 8-ми ядрах, это не совсем то
|
|||
30
Joshim
13.09.12
✎
17:24
|
(27) а можно написать чтоб задействовать свободные ядра? как?
|
|||
31
Beduin
13.09.12
✎
17:24
|
(4) Как у тебя журнал регистрации загрузить целое ядро?
Он вообще тупо из системы хранения читает и все. |
|||
32
dfxz
13.09.12
✎
17:24
|
(12) да потому что у проведение по партиям типовая реализация не очень, её обычно переписывают и ускоряемся в разы....
|
|||
33
Kreont
13.09.12
✎
17:25
|
(5) Не то, отдельные процессы, это хорошо, но для правильной многопоточности и распаралеливания, надо чтоб ядро умело одной задачей грузить все ядра
|
|||
34
AaNnDdRrEeYy
13.09.12
✎
17:25
|
(27) в (26) прав. одна обработка работает под одним сеансом, один сеанс ложится только на один rphost, а один рпхост только на одно ядро.
|
|||
35
aka MIK
13.09.12
✎
17:26
|
(15) rar
|
|||
36
Beduin
13.09.12
✎
17:26
|
И вообще распределение задачи по ядрам это функция ОС. Ее либо используешь когда программируешь либо нет. Поправьте если не прав?
|
|||
37
Kreont
13.09.12
✎
17:27
|
Я из програм что умеют себя распаралеливать по ядрам один раз только видел какой то обработчик видео, и все :(
|
|||
38
Beduin
13.09.12
✎
17:27
|
(37) WinRar еще. И этот Battlefield!
|
|||
39
rs_trade
13.09.12
✎
17:28
|
(30)(34) если некую задачу разбить на фоновые задачи, то они грузят все ядра. и грузят прилично.
|
|||
40
Joshim
13.09.12
✎
17:28
|
(36) да, но в языке разработки разработчик описывает логику распаллеливания. В 1С почему то не делают этого
|
|||
41
Mafoni
13.09.12
✎
17:29
|
ТС - журнал регистрации - это файло как ты его многопоточно читать то будеш ?
|
|||
42
AaNnDdRrEeYy
13.09.12
✎
17:29
|
(39) а синхронизировать их как будеш ну типо оператор lock же нету или класса mutex?
|
|||
43
aka MIK
13.09.12
✎
17:29
|
(0) Потому что им еще выпускать версию 9...
|
|||
44
ДенисЧ
13.09.12
✎
17:30
|
(42) кто мешает локи самому сделать?
|
|||
45
Kreont
13.09.12
✎
17:31
|
Проверил: Winrar только при упаковке грузит ядра, при распаковке только одно :)
|
|||
46
AaNnDdRrEeYy
13.09.12
✎
17:32
|
(44) через регистры или константы? это не локи это извращения. я не говорю про блокировки таблиц базы данных, я говорю про то когда один поток или процесс должен подождать завершение другого или про блоки потокобезопасного когда доступ к блоку должен получить только 1 поток
|
|||
47
rs_trade
13.09.12
✎
17:35
|
(46) в цикле ожидать завершения всех задач. через обработчик ожидания наверное еще можно.
|
|||
48
Joshim
13.09.12
✎
17:35
|
(32) если стоит мощный сервак с мощной СУБД и при проведении по партиям СУБД практически простаивает, то это вопрос к платформе больше, так как узкое место процессор. Поправьте если я не прав?
|
|||
49
МихаилМ
13.09.12
✎
17:37
|
линейные преобразования прекрано рапараллеливаются . к ним можно отнести 1/3 кода задачи 1с програмирования.
вот интересный сайт на тему многопоточности и 1с http://www.richmedia.us/post/2011/05/04/multithreading-1c-82.aspx http://www.richmedia.us/post/2009/11/02/1c-multithreading-and-callback-functions.aspx |
|||
50
Lexusss
13.09.12
✎
17:37
|
В УФ формирование отчета выполняется на одном ядре. В это время ты можешь работать, загружая другое ядро
|
|||
51
Joshim
13.09.12
✎
17:37
|
(46) так это и не ясно, почему 1С в платформе не делает поддержки методов и функций для создания и синхронизации процессов
|
|||
52
rs_trade
13.09.12
✎
17:38
|
(46) я делал выгрузку большого объема данных параллельно. мне не надо было ждать. исходный массив данных делился на несколько частей, обрабатывался и выгружался в отдельный файл. при использовании 2-3-х фоновых заданий время выполнения сокращалось примерно в таких же пропорциях.
|
|||
53
Ахиллес
13.09.12
✎
17:42
|
(41) Первый поток спереду, второй сзаду. Втретятся посередине :-)
Уже ускорение в два раза. :-) |
|||
54
AaNnDdRrEeYy
13.09.12
✎
17:42
|
(52)а вот если бы надо было записать все в 1 файл а обработать в 3 фоновых то пришлось бы ждать когда обработку завершат все 3 и записывать в том который вызвал 3 фоновых вот тут было бы на 1С гораздо сложнее.
|
|||
55
Нуф-Нуф
13.09.12
✎
17:52
|
(1) согласен. это кстати официальная позиция 1С по многим вопросам
|
|||
56
rs_trade
13.09.12
✎
18:01
|
(51) потому что это ни к чему.
|
|||
57
Рэйв
13.09.12
✎
18:06
|
(0) Там и без организации параллельных потоков глюков хватает...Так что лучше не надо
|
|||
58
Рэйв
13.09.12
✎
18:07
|
(0)+ и кстати. Многоядерность и много поточночть - это как бы разные вещи.
|
|||
59
Fragster
гуру
13.09.12
✎
18:14
|
||||
60
Fragster
гуру
13.09.12
✎
18:15
|
в 8.2, кстати, намного лучше фоновые работают
|
|||
61
Рэйв
13.09.12
✎
18:18
|
(60)Фоновые - это пример многопоточности Win 95. Она на самом деле не была многозадачной. Просто по прерыванию один поток прерывал выполнение других и какое то время выполнялся, а потом по таймеру отдавал управление обратно
|
|||
62
Fragster
гуру
13.09.12
✎
18:19
|
(61) это только на файловой, на клиент-серверной реально параллельно выполняются
|
|||
63
Рэйв
13.09.12
✎
18:20
|
(62)Споить не буду.Не проверял лично.
|
|||
64
KRV
13.09.12
✎
18:30
|
Нахрена в ларьках многоядерность?
|
|||
65
Terve-R-
13.09.12
✎
18:30
|
Нахрен мне ваши сервер не упал! У меня все базы файловые!!
|
|||
66
Terve-R-
13.09.12
✎
18:30
|
7 ядер простаивает :(
|
|||
67
Terve-R-
13.09.12
✎
18:34
|
и все равно как правильно заметили выше
"одна обработка работает под одним сеансом, один сеанс ложится только на один rphost, а один рпхост только на одно ядро" |
|||
68
МуМу
13.09.12
✎
18:42
|
1С поддерживает параллельные процессы, просто некоторые неумеют их готовить.
На эту тему писал ранее http://softpoint.ru/article_id376.htm (12) http://softpoint.ru/article_id375.htm Это тоже возможно. Вообще на эту тему есть целое научное направление. Вот пример доклада на конференции. http://pavt.susu.ru/2012/short/261.pdf (46) Согласен аналога мьютекса в стандартном функционале несколько не хватает да и издержки на фоновых задачах есть небольшие. Но это тоже обходится использованием внешней компоненты с помощью которой можно передавать управление. Вывод общий - писать с использованием параллельных вычислений дольше и дороже. Вот собственно говоря и причина почему их так редко используют. |
|||
69
МуМу
13.09.12
✎
18:48
|
(57)+1
|
|||
70
H A D G E H O G s
13.09.12
✎
20:31
|
Я писал прогу распределенных вычислений по сети (по компам раскидывала брутфорс на xor). Это писец такое писать. Но это куйня. Писец такое отлаживать.
|
|||
71
H A D G E H O G s
13.09.12
✎
20:33
|
Вообще я куею от того, что доблесные спецы делают все на сервере, в то время, как весь мир идет к распределенным вычислениям.
Это конечно годно, когда нужны данные в процессе, но если нет, или данных немного - отлично все можно сделать на клиенте. |
|||
72
Ненавижу 1С
гуру
13.09.12
✎
20:40
|
(71)а я вообще за то, чтобы проведение делалось прямо на сервере баз данных
|
|||
73
Рэйв
13.09.12
✎
20:42
|
(70)Я писал рабочее место для менеджера заказов поставщиков...Со всеми их формулами и 3-6 месячными прогнозами
Твой распределенные нервно курит в стронке. |
|||
74
aleks-id
13.09.12
✎
20:43
|
(72) а в управляемом приложении оно где то еще может провестись?
|
|||
75
ЧашкаЧая
13.09.12
✎
20:43
|
(72) На СУБД имелось ввиду?
|
|||
76
МуМу
13.09.12
✎
20:46
|
(72) Это конечно да. Скорость сразу на порядок быстрее.Нет лишних издержек. Все делается на СУБД. У нас у 7-и клиентов к примеру реализована большая логика напрямую на SQL.Причем у двух БД не на 1С.Мне к примеру одно время PLSQL стал как родной.(да и TSQL тоже, хотя сейчас подзабыл). Сейчас готовлю доклад для MSSQL club на тему параллельных вычеслений для MSSQL(TSQL).
|
|||
77
Рэйв
13.09.12
✎
20:47
|
(72)Глупость:-)
|
|||
78
Рэйв
13.09.12
✎
20:47
|
+(77)Уж извини
|
|||
79
H A D G E H O G s
13.09.12
✎
20:48
|
Реальные спецы, я так посмотрю, меряются логарифмической линейкой.
|
|||
80
МуМу
13.09.12
✎
20:53
|
Думаю, первый вопрос политический. 1С должна "разрабатываться" на 1С языке. Второй вопрос это унификация (MSSQL, ORACLE,DB2, файловая версия).Хотя из них только MSSQL можно считать корпоративным стандартом(мое мнение).
|
|||
81
Рэйв
13.09.12
✎
20:55
|
(80)Да ты вообще не в теме..
1С - и DOS... Это тема. |
|||
82
Рэйв
13.09.12
✎
20:57
|
Как наладить соответствие?...Никто же даже не думал!
|
|||
83
Рэйв
13.09.12
✎
20:57
|
Мы все умрем..Я так и знал.
|
|||
84
МуМу
13.09.12
✎
20:59
|
(72),(77) Проблема основная в сопровождении изменений. Сложно будет вести один и тот же код(логику) на TSQL(PLSQL) и на 1С. Нужно выбирать что то одно. Тогда пришлось бы генерить автоматически читаемые views.(мы такое делали для онлайн интеграции с web). Но в этом случае вопрос нелицензионного использования(точнее его контроля) усложняется серьезно технически. Мое мнение что это одна из основных проблем для официального открытия 1С доступа напрямую к данным.
|
|||
85
Рэйв
13.09.12
✎
21:00
|
(84)Все равно (83)...
Эхх... |
|||
86
Рэйв
13.09.12
✎
21:04
|
Мне вот только интересно, чего ожидают , присутствующие в этой теме?6-)))
Что бы ЭХХ было прям сейчас, а вы успели запастись попкорном?. Обойдетесь. |
|||
87
Рэйв
13.09.12
✎
21:05
|
спасибо за внимание, можете расходиться.
|
|||
88
МуМу
13.09.12
✎
21:09
|
Нет дискусии, а мне много чего есть сказать на эту тему:)
|
|||
89
МуМу
13.09.12
✎
21:12
|
Подведу итог. Тренд на ближайшие 20 лет - параллельные вычисления.(там возможно квантовые суперэвм появятся) Только вот плюсы от их использования пока не покрывают минусы(трудно и дорого). Думаю это произойдет через 5-10 лет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |