|   |   | 
| 
 | Почему 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 лет.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |