Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
При обходе дерева глобалов Cache' нагружает процессор до 100%, так что остальные пользователи и процессы тормозят. Как можно установить процессу приоритет при чтении глобалов, либо вообще где-то глобально в Cache' выставить такой приоритет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 12:54 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Для NT, текущий приоритет процесса: Код: plaintext Код: plaintext и тынц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 13:52 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Странно это. Не должно быть такой загрузки проца. Можно взглянуть на код? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 13:54 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Действительно странно. Более вероятно, что просел бы диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 14:26 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Если бы просел диск, то этот процесс стал бы тормозить ))) Если в основном работает процессор - значит процесс ходит по кешу. Можно по коду расставить притормаживание, например раз в 10 итераций выполнять h 0.01 Процесс периодически будет отдавать процессор другим процессам, но и он сам будет работать чуть медленнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 16:04 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
ну янапример раз в 10 итераций выполнять Код: plaintext Чет вспомнилость... Еще в МСМовскую бытность клиент пожаловался мне де очень долго выполняется операция "Выставление счета"... Оно мол и понятно - там много всякой информации и это раз в месяц... Но все же. Начал я просматривать код программок... И то там, то там стал наталкиваться на Код: plaintext Фигасе! Подумал я! И давай поиском по (уже) всем программкам кипа искать эту комманду - список меня потряс! Убрал все ненужные. Дай думаю поищу и Код: plaintext Так я дошел и до Код: plaintext Больше вроде небыло. После моих "преобразований" клиент ликовал! А я прослыт там просто волшебником. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 17:03 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Надо было таймаут приуменьшать раз в месяц, тогда бы клиент ликовал каждый месяц. ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 17:31 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
krvsaНачал я просматривать код программок... И то там, то там стал наталкиваться на Код: plaintext Фигасе! Подумал я! И давай поиском по (уже) всем программкам кипа искать эту комманду - список меня потряс! Убрал все ненужные. Кстати, как определили, какие нужные, а какие нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2009, 17:37 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Код такой testGlobal f i=1:1:100000 { s ^a(i,i,i,i,i,i)=i} s key = $Q(^a) while key '="" { s key = $Q(^a) } Хотел бы чтоб процессы в Каше сами ресурсы процессора разграничивали. Пробовал использовать d SET^%PRIO("LOW,BATCH") ничего не изменилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 04:43 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
ну якак определили, какие нужные, а какие нет? Примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Это примерные примеры конечно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 08:32 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon=Пробовал использовать d SET^%PRIO("LOW,BATCH") ничего не изменилось. Наш опыт показывает обратное... Управление другим процессам отдается. Но с некоторой паузой чтоли... Т.е. процесс некой массовой обработки таки мешает тем, кто ведет ручной ввод информации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 08:35 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon= , напомни какая у тебя версия Кащея? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 08:37 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
krvsa, Cache' 5.2.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:03 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Даже старше той, с которой мы "попали" в эту проблему... Нам пришлось в срочном порядке ставить понищение приоритетов в процедуре прохода по картотеке. Пользователи роптали вначале, а потом толи привыкли... Толи умощнение серверов "понизило" эту проблему... То ли переход на новую версию Кащея... Одним словом сейчас на это не жалуются ---------- Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:08 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
h не помогло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:27 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon=Код такойКакой же это обход глобала, господа? Это скорее задачка типа "найдите 3 ошибки в коде". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:34 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Alexey Maslov, Код такой testGlobal f i=1:1:100000 { s ^a(i,i,i,i,i,i)=i} s key = $Q(^a) while key '="" { s key = $Q(@key) } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:49 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon=while key '="" { s key = $Q(^a) } Может, тут нужно как-то key изменять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:57 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Где остальные 2 ошибки? ---------- Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 11:58 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon=Alexey Maslov, Код такой testGlobal f i=1:1:100000 { s ^a(i,i,i,i,i,i)=i} s key = $Q(^a) while key '="" { s key = $Q(@key) } Код отрабатывает моментом. Проблема-то в чем? Где тут что тормозит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 12:01 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon= f i=1:1:100000 { s ^a(i,i,i,i,i,i)=i} s key = $Q(^a) while key '="" { s key = $Q(@key) } Это истинный код или "по мотивам"? Потому как непонятно использование $Query при известной структуре массива. Конечно он будет жрать ресурсы. Тут надо не приоритеты понижать, а код приводить к нормальному виду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 12:40 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
ну я=Dimon=Alexey Maslov, Код такой testGlobal f i=1:1:100000 { s ^a(i,i,i,i,i,i)=i} s key = $Q(^a) while key '="" { s key = $Q(@key) } Код отрабатывает моментом. Проблема-то в чем? Где тут что тормозит? Ясно что тормозит - малый кэш. Поэтому все упирается в диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 12:41 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
При малом кэше все уперлось бы в Disk I/O, а не в CPU. Когда глобал весь в кэше, ожиданиe Disk I/O отсутствует, вот и имеем 100% CPU (точнее, одного из CPU/ядер, если их несколько). Правда, чтобы увидеть эти 100%, мне пришлось немного переделать код, увеличив глобал (с 4 до 40 Мб) и кол-во сканирований (с 1 до 10): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2009, 14:34 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
Alexey Maslov, В Вашем случае возможно проблем и не возникло, т.к. вы программу выполняете последовательно. А запустите из терминала 2 таких задачи с выводом значения глобалов на экран и увидите задержки и загрузка процессора на 100%, что другие процессы не могут данные читать/писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2009, 04:04 |
|
||
|
Понижение приоритета при чтение глобалов
|
|||
|---|---|---|---|
|
#18+
=Dimon=Alexey Maslov, В Вашем случае возможно проблем и не возникло, т.к. вы программу выполняете последовательно. А запустите из терминала 2 таких задачи с выводом значения глобалов на экран и увидите задержки и загрузка процессора на 100%, что другие процессы не могут данные читать/писать. Может вы все-таки объясните смысл этой задачи? На многозадачный тест она никак не тянет, поскольку реализована именно для последовательного выполнения. Так зачем она нужна-то? =Dimon=Alexey Maslov,При малом кэше все уперлось бы в Disk I/O, а не в CPU. Когда глобал весь в кэше, ожиданиe Disk I/O отсутствует, вот и имеем 100% CPU (точнее, одного из CPU/ядер, если их несколько). Поясняю: при последовательном чтении массива кэш обновляется постоянно, то есть смысла в нем просто нет. Все последующие задачи в кэше ничего не находят и лезут на диск, который пытается снова писать в кэш и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2009, 10:16 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=35770940&tid=1558599]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
143ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 459ms |

| 0 / 0 |
