Производительность 1С на многоядерных процессорах
Спросите себя сами как многоядерность поможет вам в однопоточной задаче проведения документов? Что 1С тут должна распаралелить? Запросы на стороне СУБД выполняются быстрее в один поток. Тут паралелизм только вредит.
Со стороны самой 1С если нужно проводить документы в несколько потоков то можно разделить весь объем данных на несколько порций и передать каждую из них в фоновое задание где и выполнять проведение. На сколько порций разделите столько потоков у вас и будет. Количество потоков рекомендуется не более 8. Но при этом следует понимать что согласованность данных вы должны сами обеспечить и если в этих документах есть контроль остатков и т.д. то само собой согласовать ничего не получиться в принципе
Со стороны самой 1С если нужно проводить документы в несколько потоков то можно разделить весь объем данных на несколько порций и передать каждую из них в фоновое задание где и выполнять проведение. На сколько порций разделите столько потоков у вас и будет. Количество потоков рекомендуется не более 8. Но при этом следует понимать что согласованность данных вы должны сами обеспечить и если в этих документах есть контроль остатков и т.д. то само собой согласовать ничего не получиться в принципе
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
клиент 1с под виндоуз 32-битный и однопоточный. Сервер может быть и 64-битным и использовать несколько процессов (а следовательно и ядер) для своей работы, но речь идет про разные задачи. Распараллелить одну задачу (как то - проведение доков), пока не получится.
На 1С 7.7, если запускаешь продолжительную задачу на двухъядерном процессоре, то загружается только одно ядро. Второе просто простаивает.
Думал в 1С 8 этот вопрос решили. Ан нет - запустил проведение документов на 2-х ядернике : загружено только одно ядро.
Тестировал на файловых версиях.
Теоретически, если использовать все ядра, производительность может увеличиться в разы.
Может кто-нибудь занимался этим вопросом, поделитесь.
Думал в 1С 8 этот вопрос решили. Ан нет - запустил проведение документов на 2-х ядернике : загружено только одно ядро.
Тестировал на файловых версиях.
Теоретически, если использовать все ядра, производительность может увеличиться в разы.
Может кто-нибудь занимался этим вопросом, поделитесь.
Мдаа.... в общем одна задача - один процессор. 1с 9.0 может и научится двигать автоматически по нескольким регистрам одновременно, но вот выполнять ОДИН запрос или ОДИН расчет сразу на нескольких процессор - никогда... принципиально.
А вот что сейчас работает реально - SQL SERVER и 1с сервер крутятся на отдельных процах, более того с 8.1 можно кластер использовать - хоть 100 штук, лишь бы процов хватило.
З.Ы. многопроцессорность не увеличивает производительность однопотоковых или взаимосвязанных задач, а только их одновременное количество для исполнения. Программирование параллельных потоков - отдельное направление в современном программировании и флагманы в этом - графика и физика.
А вот что сейчас работает реально - SQL SERVER и 1с сервер крутятся на отдельных процах, более того с 8.1 можно кластер использовать - хоть 100 штук, лишь бы процов хватило.
З.Ы. многопроцессорность не увеличивает производительность однопотоковых или взаимосвязанных задач, а только их одновременное количество для исполнения. Программирование параллельных потоков - отдельное направление в современном программировании и флагманы в этом - графика и физика.
Нет, это квалификация некоторых юзеров недостаточна для того, чтобы понять, что не все йогурты одинаково полезны. А именно суть прикладных задач в том, что они должны выполняться последовательно. Особенно дисковые операции, которые и занимают у 1С большую часть времени.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)