Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Назначение ядер процессора экземпляру DB2-Express 10.1 (http://forums.kuban.ru/f1040/naznachenie_yader_processora_ekzemplyaru_db2-express_10_1_a-5307048.html)

Billi 22.01.2014 16:13

Назначение ядер процессора экземпляру DB2-Express 10.1
 
Ткните меня носом, какой параметр отвечает за распределения ядер процессора между экземплярами DB2.
я тут нашёл один параметр DB2_CPU_BINDING, но он для Линукса. А у меня Вынь х64.
Или для Выня нету? :(

Блондинка в шок 22.01.2014 18:38

а в "[em]Выне[/em]" можно брать себе любое понравившееся ядро на выбор без ведома "[em]Выни[/em]"? хм..
мне кажется, можно только сказать [em]Выни[/em], что бы я предпочла, но решать все равно будет она ([em]Выня[/em]).

типо такого:
db2set DB2PROCESSORS=0,1,2,3.. и т.д.

Billi 22.01.2014 19:06

[quote=Блондинка в шок;33822141]а в "Выне" можно брать себе любое понравившееся ядро на выбор без ведома "Выни"? хм.. мне кажется, можно только сказать Выни, что бы я предпочла, но решать все равно будет она (Выня). типо такого: db2set DB2PROCESSORS=0,1,2,3.. и т.д. [/quote]
Так я и ищу способ. А со стороны выни или о со стороны db2, мне без разницы :)
Знаю где и как это настроить в firebird superserver, в ms-sql тоже знаю.
А в db2 не могу найти.

Блондинка в шок 22.01.2014 19:45

2-Billi >[em]А в db2 не могу найти.[/em]
ну так вот это
для одного инстанса
db2set DB2PROCESSORS=0,1
для другого инстанса
db2set DB2PROCESSORS=2,3
не подходит?


зы: а со стороны выня.. в диспетчере задач ПКМ - "задать соответствие"? не?

Billi 22.01.2014 19:53

[quote=Блондинка в шок;33822851]2-Billi >А в db2 не могу найти. ну так вот это для одного инстанса db2set DB2PROCESSORS=0,1 для другого инстанса db2set DB2PROCESSORS=2,3 не подходит?[/quote]
Пробую, не работает. "1,2" не присваивается. шестнадцатеричная маска тоже не канает. Просто одно число, также не действует.
[quote=Блондинка в шок;33822851]зы: а со стороны выня.. в диспетчере задач ПКМ - "задать соответствие"? не? [/quote]
В диспетчере задач без проблем задается, руками.
А вот как этот процесс автоматизировать?
start /affinity - для службы не подходит. Или можно как-нибудь извратиться?

Блондинка в шок 22.01.2014 19:54

люди добрые, а поделитесь ссылочкой на Express-C 10.1.2
а то на официальном сайте IBM всегда лежит только крайняя, на данный момент это 10.5.

А больно уж хочется 10.1 желательно 10.1.2) поюзать.
Не успела вовремя на IBM скачать, а теперь она там вне раздачи.

:)

Блондинка в шок 22.01.2014 20:03

4-Billi >[em]Пробую, не работает. "1,2" не присваивается.[/em] а ты точно это для разных инстансов делаешь?

зы: вообще то я не уверена насчет точности синтаксиса.. инсталлированного DB2 под рукой нету.
Но переменная DB2PROCESSORS точно существует.

Billi 22.01.2014 20:13

[quote=Блондинка в шок;33822945]А больно уж хочется 10.1 желательно 10.1.2) поюзать[/quote]
Я сейчас 10.1.0.872 мучаю.
Если надо, могу куда-нибудь скинуть, или через торрент забирай.
[quote=Блондинка в шок;33823047]Но переменная DB2PROCESSORS точно существует. [/quote]
Ага, существует, только в Экспрессе почему-то не работает.
А в коммерческих версиях все четко отрабатывает.

Блондинка в шок 22.01.2014 20:18

значит, вот оно, еще одно ограничение бесплатной версии. А жаль.

зы: не, буду именно 10.1.2 искать, потому что по отзывам самая стабильная.

Helen1986 22.01.2014 23:21

/affinity <HexAffinity>
Applies the specified processor affinity mask (expressed as a hexadecimal number) to the new application

Billi 23.01.2014 06:02

9-Helen1986 >повторюсь, это для апликейшен. а нужно для сервиса.

Reaper 23.01.2014 20:53

1. DB2 Express-C 10.1 обладает сюрпризами. В связке с 8.3 из-за этого наблюдаю падения без видимых причин. Лучше поставить 9.7.1 пока я делаю для 1Сов тесты разных версий. Договорились с отделом корп. поддержки, что после сбора дампов для всех версий десятки они начнут трясти ibm на предмет спец. Сборки.

2.DB2 от природы больше 2х ядер не жрет. Остывать ее в покое, винда сама разрулит остальные процессы по свободным ядрам.

Блондинка в шок 23.01.2014 21:58

11-Reaper >[em]Лучше поставить 9.7.1[/em]

тренируюсь на домашнем компе:
1) 9.7FP1 (c сайта 1c)
конфа БГУ.
на машинке ХР 32-х пашет нормально.
на win7 64-х падает с ошибкой при формировании одного определенного регламентированного отчета.
Да, я понимаю, что БГУ - достаточно специфическая конфа.. и отчет "Карточка учета средств и расчетов"- тоже специфический, и запрос там хитроперемудренный.. Но.. мне от этого не легче..

2) 9.7FP6 64-х (с сайта 1С) под WIN7 64-х падает через некоторое время с ошибкой о нехватке памяти.

платформы пробовала разные и 8.2.19 и 8.2.18. Остановилась на 8.2.18.109

постепенно прихожу к выводу, что DB2 и БГУ быстро удаляются друг от друга. На новых платформах и новых ОСях.

хотя еще раз повторю - 9.7FP1 платформа 8.2.17.153 ОСь WIN XP32 - работают прекрасно 10 юзеров в базе БГУ.
зы: а у тебя есть Express-C 10.1.2?

Чучундер 23.01.2014 22:03

а как будет вести себя l,2 в боевых условиях..?
разворачиваем WMS, внедренцы скуль говорят. на вопросы про альтернативы - говорят не пробовали. По прикидкам l,2 должен потянуть в халявном варианте - нагрузк ане сильно большая, ябы даже сказал небольшая. Сервак - нормальный будет.

Чучундер 23.01.2014 22:04

"..себя l,2 в бо.."= ДБ2

Блондинка в шок 23.01.2014 22:29

Если взлетит сразу - то нормально будет в любых боевых условиях. Поставишь и забудешь.

А если не взлетит сразу - сразу же и забей. И уходи на скуль или постгри. Танцы с бубном вокруг IBM DB2 - хм.. оно тебе надо?

Reaper 24.01.2014 00:28

12-Блондинка в шок >
Если есть возможность - собери дополнительную диагностику для вылета БГУ собранную при помощи утилиты db2support:
> db2diag -A (очистит лог, чтобы техподдержке было проще)
> ... воспроизведение проблемы (это в 1С)...
> db2support -s (упакует всю технологическую информацию СУБД в архив)

и отправь архив на ящик хотлайна.

IBM не все коммерческие сборки пересобирает в Express-C. Такой версии просто не было. Меня сейчас заверяют, что в платной 10.5.2 все классно. А вот Express-C доступна только 10.5.1. Собственно она у меня сейчас в тестировании.

Да, и еще. Инсталляторы IBM на Win Server 2012 R2 пока не работают - будьте бдительны.

14-Чучундер > Win Server 2008 R2 + IBM DB2 9.7.1. Платформа 1С периодически обновляется. Конфигурации:
УНФ (прилично нетиповая) - 1 база 60 пользователей
БП (типовая) - 5 баз, по 1-3 пользователя
ЗУП (типовая) - 5 баз, по 1-2 пользователя

Все это живет у одного клиента с сентября 2012 и каши не просит.

Billi 24.01.2014 02:59

[quote=Reaper;33838503]2.DB2 от природы больше 2х ядер не жрет. Остывать ее в покое, винда сама разрулит остальные процессы по свободным ядрам. [/quote]
Если бы разруливала, то вопрос бы не возник.
Все экземпляры запускаются на ядрах 0 и 1, и затем их вручную в диспетчере задач приходиться перераспределять.

Reaper 24.01.2014 18:34

17-Billi > значения настроек в Windows лежат в реестре, ключи выглядят примерно так:[quote=IBM DB2;33841071]HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\InstalledCopies\DB2COPY1\PROFILES\DB2[/quote]

DB2COPY1 - имя инстанса
Для каждого примени команду
db2set -g DB2PROCESSORS=0.1
с ожидаемыми значениями и проверь, что в реестр попали разные значения для разных инстансов.

Billi 24.01.2014 19:07

18-Reaper >В реестр все прописывается. Но все инстансы по прежнему на 0.1 висят, не зависимо от содержимого DB2PROCESSORS

smaharbA 24.01.2014 19:08

так то для любых процессов, в том числе и сервисов - старт /афинити не отменяли

Billi 24.01.2014 19:16

20-smaharbA >Подскажи как службу запустить по старт /афинити

smaharbA 24.01.2014 19:25

пишешб в ветку или в вми имадж с кмд /ц и т.д. - одна засада - взаимодействие с раб столом - но Вам же не важно когда запустится

smaharbA 24.01.2014 19:28

+ крайний случай - в шедулер на запуск

Billi 24.01.2014 19:39

[quote=smaharbA;33852206]пишешб в ветку [/quote]
Как это?
Можно пример?

smaharbA 24.01.2014 19:57

не издевайтесь, в шедулер задание с cmd /c start "" ... - если дб позволяет запускаться в стандалоне - для начала. с сервисом конечно дб2 не видел - каюсь.

Billi 24.01.2014 20:03

25-smaharbA >Да не запускается она стартом!

smaharbA 24.01.2014 20:09

фигово - ничего не скажу, а если из винкита использовать srvany ?

smaharbA 24.01.2014 20:11

+ для запуска кмд и т.д. как сервиса ?
хотя если не запускается в окружениии - то не знаю видимо.

Billi 24.01.2014 20:15

28-smaharbA >и в WHS я не нахожу ничего подходящего.
Службу запустить могу, а афинити назначить - нет.

smaharbA 24.01.2014 20:27

повершел вроде как может назначить полученному процессу, по сути тот же винструмент (вми) - т.е. дождаться - назначить маску, как то так ?

Billi 25.01.2014 22:33

Значится так.
Коряво, но победил я эту проблему.
Сценарий победы (с помощью PowerShell):
1. Если в системе запрещен запуск сценариев делаем следующее:
а. Запускаем PowerShell от имени администратора. (можно таким способом: запускаем cmd от имени Администратора и там вводим команду powershell )
б. Вводим команду:

Set-ExecutionPolicy RemoteSigned

([url=http://winintro.ru/windowspowershellhelp.ru/html/24d903a7-780b-42fa-96b5-cc9596da0073.htm]справка по команде Set-ExecutionPolicy[/url])

2. С помощью блокнота создаем файл с расширением ps1, например StartService.ps1
в этот файл помещаем следующее:

$NameService=$args[0]
$Affinity=$args[1]

Function SetProcessAffinity($IdProces)
{
$poc = Get-Process | where {$_.Id -eq $IdProces**
$poc.ProcessorAffinity=$Affinity
**

Function SetProcessAffinityChildren($P,$Depth=1)
{
$procs | Where-Object {$_.ParentProcessId -eq $P.ProcessID -and $_.ParentProcessId -ne 0** | ForEach-Object
{
SetProcessAffinity($_.ProcessID)
SetProcessAffinityChildren($_ ,++$Depth)
$Depth--
**
**

start-service $NameService
$service = Get-WmiObject Win32_service | where {$_.Name -eq $NameService**
SetProcessAffinity($service.ProcessID)
$procs = Get-WmiObject Win32_Process
$p = $procs | Where-Object {$_.ProcessID -eq $service.ProcessID**
SetProcessAffinityChildren($p)

3. В ТОМ ЖЕ КАТАЛОГЕ с помощью того же блокнота создаем файл с расширением cmd, например StartDB2.cmd
в этот файл помещаем следующее:

powershell -command .\StartService.Ps1 %1 %2

4. Запускаем файл StartDB2.cmd с двумя параметрами:
первый параметр это ИМЯ СЛУЖБЫ экземпляра DB2 (НЕ имя экземпляра), второй параметр это [url=http://msdn.microsoft.com/en-us/library/system.diagnostics.processthread.processoraffinity(v=vs.110).aspx]маска в шестнадцатеричном коде[/url]
ВНИМАНИЕ!!! Ни какой проверки на наличие параметров, или их корректности не производится!
Пример запуска:

StartDB2.cmd DB2 0x00c0

В результате указанная служба запускается на ядрах, указанных в маске.
Если служба уже была запущена до выполнения команды, то у неё просто изменяется набор активных ядер.
ВНИМАНИЕ!!! Проверок на наличие службы, или корректность параметров, или ещё чего-нибудь НЕТ!!!

Billi 25.01.2014 22:37

+(31) StartDB2.cmd надо запускать от имени Администратора.

Billi 25.01.2014 22:59

+(31) С помощью этого способа можно запускать любые службы, не только DB2

Billi 02.02.2014 19:11

[quote=Блондинка в шок;33822945]люди добрые, а поделитесь ссылочкой на Express-C 10.1.2а то на официальном сайте IBM всегда лежит только крайняя, на данный момент это 10.5.А больно уж хочется 10.1 желательно 10.1.2) поюзать. Не успела вовремя на IBM скачать, а теперь она там вне раздачи. :) [/quote]
Блондиночка, если нашла ссылку, поделись плиз.

Billi 02.02.2014 19:21

8-Блондинка в шок >Ура!
[url=http://www-01.ibm.com/support/docview.wss?uid=swg24033997#toggle]Вот чего нарыл[/url]
Кажись то, что надо.

Billi 03.02.2014 10:10

(+35) Добавлю, что у меня не получилось корректно установить этот фикспак через штатный инсталятор (setup.exe). Возникают проблемы с лицензиями.
Но вот если запустить непосредственно ".\db2\windows\DB2 Express-C.msi", то все замечательно работает. И DB2PROCESSORS отрабатывает на ура.

Кстати, [url=http://www-01.ibm.com/support/docview.wss?uid=swg27007053]вот тут[/url] все фикс паки db2.

Блондинка в шок 03.02.2014 11:29

Спасибо огромное, Билли. Непременно воспользуюсь.

зы: только я сейчас слегка отвлеклась от 1С.
Выехал дедушка на встречку и собрал немножко машинок в кучку. В том числе и мою.
Так что сейчас у меня немножко другие заботки.
:)

зы: Бойтесь дедушек не на зеленой шестерке, а на Волге Газ 31029. Ух и баржа. Тяжелая, железная, крутит ее по гололеду здорово. Все вокруг крушит на раз.

Billi 03.02.2014 17:24

37-Блондинка в шок >Сама не пострадала? Машина сильно повреждена? Страховка, надеюсь, есть?

Billi 03.02.2014 17:32

Да, кстати, я тут малехо пересобрал универсальные фикспаки, удалил из них платные сервера, оставил только Express-C.
Теперь все стандартно запускается.
Есть 10.1.2, 10.1.3, 10.5.2.
DB2PROCESSORS везде работает :)
Обращайся, ежели чего.


Текущее время: 23:17. Часовой пояс GMT +3.