powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Странности с производительностью. PC vs Z/OS
20 сообщений из 20, страница 1 из 1
Странности с производительностью. PC vs Z/OS
    #34621337
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А есть у когонибудь идеи, как можно объяснить нижеследующее?
Суть проблемы. Необходимо было выгрузить некоторые значения из
нескольких таблиц с достаточно сложным условием. Для упрощения процедуры
выгрузки было написано простенькое java-приложение. 1 класс, несколько
методов. Приложение ходит в базу, делает запрос, затем по каждой записи
делает дополнительные запросы в цикле. При запуске на мейнфрейме
(z80, zVM/RHEL 4.3) приложение отъедало по несколько мегабайтов
каждые 100 рекурсий цикла, т.е. приблизительно через полчаса объем
потребленной памяти вырос до ~400Мб, превысил HeapSize и процесс был
остановлени. Потребление процессора судя по top для этого процесса было
на уровне 60-80%. При запуске на обычном ноутбуке (P-m 1,5/2GB/OpenSuse
10.1, java Sun 1.5.0.10) выгрузка выполнялась на глаз в 3-4 раза
быстрее, при этом потребление памяти при запуске было 21Мб, а в конце
работы, через 12 часов снизилось до 19Мб, загрузка процессора была на
уровне 0,7-2%. Парадокс?

Строка запуска на ноутбуке:
/opt/IBM/SDP70/jdk/bin/javaw
-Djava.library.path=/opt/libraries/ -classpath
/home/dmatsynin/work/RNION/fisics_autoFOS1.4_39_63.jar:/opt/ibm/db2/V9.1/java/db2jcc.jar:/opt/ibm/db2/V9.1/java/db2jcc_license_cu.jar
kz.testexports.FisicalTestExportFOS
сообщение java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)
Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing)

Строка запуска на мейнфрейме:
/opt/IBMJava2-s390x-141/bin/java-jar fisics_autoFOS1.4_39_63.jar
сообщение java -version

Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1)
Classic VM (build 1.4.1, J2RE 1.4.1 IBM build cxz641411-20040301 (JIT
disabled))

Может еще какая дополнительная инфа? Заранее благодарю :)
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34621349
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я обшибенился, марка фрейма - zSystem9PC
может быть нужна какая -нибудь дополнительная инфа?
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34623193
zSystem9PC - это что то несуществующее по-моему.
По крайней мере поиск по сайту IBM не нашел такого.
Для примера:
Есть модельный ряд "IBM System z9", в котором две ветки BC и EC.
Есть модельный ряд "IBM eServer zSeries 800".
К какому модельному ряду относится ваш мейнфрейм?

Кроме того, что еще крутиться на этой машине? Какой объем ресурсов выделяется приложению?
Под z/VM на одном физическом мейнфрейме можно запустить множество экземпляров ОС и они будут делить ресурсы машины.

Ну и сравнивать JRE 1.5.0 с последним фикспаком и JRE-1.4.1 (который уже не поддерживается), несколько ээ... некорректно.
Скачайте последний JDK/JRE (J2SE 5.0 SR5) для Linux for zSeries и тестируйте на нем (32-бит версия должна быть немного шустрее, чем аналогичная 64-бит версия).
IBM Java for Linux

Да, просьба рассказать здесь о результатах!
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34624173
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну конечно же я ошибся! Я имел в виду IBM System z9BC. Глючу чтото последнее время :)
Я спрошу у нашего админа сколько ОС стоит на фрейме. Конкретно внутри этой виртуальной машины работает база db2, из которой собственно и делается выгрузка. Всего памяти 9Гб, база пользует один процессор.
Какой именно объем ресурсов выделяется приложений - я немного затрудняюсь ответить, я не особо специалист по фреймам :) TOP рассказывает от 9Гб доступной памяти.
Я думаю мне нужно все уточнить и затем отписаться сюда сегодня-завтра.
Жаву обязательно скачаю и попробую!
Спасибо!
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34624231
А, ну это уже ближе к делу :)

СУБД на той-же системе что и эта программа?
Соединение с базой по JDBC идет через соединение типа 2 надеюсь (т.е. через память)?
Драйвер используется универсальный?

Нужно смотреть какой процесс и какие ресурсы кушает.
Тут варианты что или процессор на стороне приложения или процессор на стороне СУБД, или ввод-вывод на стороне СУБД.

Соответственно нужно смотреть потребление памяти, ввода-вывода и процессорной мощности внутри этой системы и внутри физической машины.
В принципе и z/VM и LPAR на машине можно ограничить по потреблению процессора.
Т.е. диагностика нужна общая так как много влияющих факторов.

Ну а внутри системы можно попытаться измерить количество MIPS и сравнить цифру с Intel-сервером.
Т.е. использовать любую программу измерения процессора в "попугаях" в обоих системах, главное одну и ту же. Это в случае, если долго работает из за нагрузки на процессор.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34624374
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне стыдно признаться, но я не особенно разбираюсь в типах соединений... Где можно про них почитать? (я нашел только классификацию типов драйверов, от 1 до 4).
А драйвер пользую db2jcc.
Да, СУБД и моя выгрузка запускаются в одной виртуальной машине. При ее запуске появляется процесс java который и ест ресурсы, указанные выше. Т.е. память до 400мб и загрузка процессора этим процессом согласно top идет до 90%.
С админами я тоже постараюсь поскорее переговорить и ответить на вопросы. И попугаев померяем :)
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34625231
Если используется универсальный драйвер (com.ibm.db2.jcc.DB2Driver), то там можно два типа соединения использовать.

Тип2 - рекомендуется для локальных соединений.
В этом случае будут использоваться JNI-вызовы dll-библиотек DB2.
Строка соединения в этом случае выглядит так: jdbc:db2:<Имя базы>

Тип4 - рекомендуется для соединения с удаленными серверами.
В этом случае будет устанавливаться сетевое соединение и вся обработка протокола будет производиться Java-кодом.
Строка соединения в этом случае выглядит так: jdbc:db2://<IP-адрес>:<порт>/<Имя базы>

Т.е. тип соединения определяется строкой соединения (или задается свойствами).

Кстати, а какая версия DB2 и с каким фикспаком стоит на Linux for System z ?
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34627143
Peter Wilson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
версия базы DB2 v.8.2 (8.1.FixPack 7) for Linux 64 bit on zSeries,
конкретно база крутиться в LPAR mode (Memory > 9 Gb) on System z9 BC
(2 IFL), 2-процессорная модель.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34627437
chro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
JIT disabled плохо.
если короткое приложение - то код в студию
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34636528
afend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Скорее всего проблема с ресурсами из-за дырки
в виртуальной машине для zVM или драйвере от DB2.
Ищите APAR'ы и PTF'ы.
Для zSeries вся эта Java'нская лабуда - так, чисто для понтов.
В серьезных системах это почти не используется, поэтому
много косяков. Знаю по практике проектов на зетках.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34637003
И какие именно проблемы?
Работает WebSphere Application Server 6.1 на SLES10 for zSeries. Машинки z800, z890.
Не сказал бы что проблем больше, чем с WAS для других платформ.
Аналогично не первый год работают сервера Apache Tomcat.
Единственная действительно серьезная ошибка на которую налетали - это некорректная работа вычислений с плавающей точкой в JDK-1.4.2 на S/390. При этом тот-же JDK нормально выполнял эти вычисления на zSeries.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34642455
afend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не знаю, какие.
Лезте на сайт IBM и читайте описалово к исправлениям.
У нас был случай по другой теме, когда после апргейда
VisualAge Generator'а в BATCH-процессе рантайма перестала
работать запись в VSAM. Мои орлы парились больше месяца
(это была второстепенная функция). А потом прочитали
в базе знаний, что нужно Generator Server с 1.2 (MVS) поднять
до 5 (там версии сменились сразу так круто). Вот так вот!
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34642966
:) На новости исправлениям я подписан и читаю регулярно.
Просто фраза "Для zSeries вся эта Java'нская лабуда - так, чисто для понтов" - создало впечатление что по вашему мнению JDK на zSeries работает сильно глючнее, чем JDK для других платформ.
С таким утверждением я не согласен, причем как для z/OS так и для z/Linux.
Работает, не хуже чем на других платформах.
Ну а ошибки есть у всех, причем IBM честно все это публикует.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34665892
dmatsynin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, категорически не хватает времени разобраться с проблемой и попробовать ваши советы. НО проблема висит, ее нужно решать и как только будет время, я ее попробую порешать и сообщу о результатах.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34670230
DHrulev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений ХабаровДа, просьба рассказать здесь о результатах!
оффтоп…
Докладываю о результатах :)
Мы тут "попросили" мэйнфрейм досчитать до одного миллиарда (или до десяти миллиардов, запамятовал), в цикле увеличивая переменную. Результат озадачил… = 10 минут. Обратились к персоналке, с той же "просьбой" = 1 минута. За расходом памяти, к сожалению, не следили, но соотношение наверняка такое же.
Уважаемый Евгений, скажите, пожалуйста, что у нас настроено неправильно? Мэйнфрейм он же ого-го какой!!!… большой…
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34670470
fasafsaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да! отвечай давай, что не так! :)

может там 10 LPAR-ов, а процессор только один


а до десяти миллиардов как считать код покажите плиз
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34670843
DHrulev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fasafsafа до десяти миллиардов как считать код покажите плиз
на слове пытаетесь поймать... не верите... эх вы...

Код: plaintext
1.
2.
  printf( "sizeof(long long) = %i\n", sizeof(long long) );
  for ( long long ll= 0 ; ll<10000000000LL; ll++ );

sizeof(long long) = 8
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34671133
:) Денис, привет!

1. Программу в студию пожалуйста.
2. Какой JDK использовался? Версия и фикспак?
3. Что за машинка? Какой у нее MIPS/MSU рейтинг?
4. Что еще выполнялось на этой машине? Какую нагрузку на процессор давал ваш процесс в этот момент? Может политикой WLM вам урезали производительность.

Во вложении два примера считаем до 10 миллиардов с помощью for и while.
Программы компилировались из исходников на каждой системе.
Во всех случаях JITC был включен.
JDK использовал те, что были в системе.

Celeron 2.8 / Windows XP / SUN JRE 1.5.0_11-b03
Реально потребленная память - 9МБ.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
ptime java test_increment_while

ptime  1 . 0  for Win32, Freeware - http://www.pc-tools.net/
Copyright(C)  2002 , Jem Berkes <jberkes@pc-tools.net>;

=== java test_increment_while ===
I= 0 
I= 10000000000 

Execution time:  46 . 516  s

ptime java test_increment_while

ptime  1 . 0  for Win32, Freeware - http://www.pc-tools.net/
Copyright(C)  2002 , Jem Berkes <jberkes@pc-tools.net>;

=== java test_increment_while ===
I= 0 
I= 10000000000 

Execution time:  47 . 727  s

Дальнейшие два теста выполнялись на однопроцессорной z800, каждый LPAR может использовать максимум половину процессора.
В одном LPAR-е стоит z/OS 1.6, в другом SLES9 64bit.
Производительность LPAR : SHOWOS 202.0 MIPS, SLES 635.69 BogoMIPS

z/OS IBM JDK 1.4.2 (cm142-20070329 (SR8)) 31bit
Реально потребленная память: 12МБ.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
time /tmp/jdk14/J1. 4 /bin/java test_increment_for
I= 0 
I= 10000000000 
 165 .21u  55 .07s  4 : 00 . 77   91 . 4 %
time /tmp/jdk14/J1. 4 /bin/java test_increment_while
I= 0 
I= 10000000000 
 165 .26u  55 .09s  4 : 00 . 67   91 . 5 %

z/OS IBM JDK 1.5 (pmz31dev-20070511 (SR5)) 31bit
Реально потребленная память: 20МБ.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
time /tmp/jdk15/J5. 0 /bin/java test_increment_for
I= 0 
I= 10000000000 
 52 .99u  17 .67s  1 : 19 . 78   88 . 5 %

time /tmp/jdk15/J5. 0 /bin/java test_increment_while
I= 0 
I= 10000000000 
 52 .97u  17 .65s  1 : 20 . 84   87 . 3 %

SLES10 IBM JDK 1.5 (pxz64dev-20070201 (SR4)) 64bit
Реально потребленная память: 20МБ.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
time /opt/ibm/java2-s390x- 50 /bin/java test_increment_for
I= 0 
I= 10000000000 

real    0m31.278s
user    0m27.259s
sys     0m0.180s
time /opt/ibm/java2-s390x- 50 /bin/java test_increment_while
I= 0 
I= 10000000000 

real    0m30.537s
user    0m27.134s
sys     0m0.183s

SLES10 IBM JDK 1.5 (j9vmxz3123-20070426) 31bit
Реально потребленная память: 20МБ.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
time /opt/ibm/java2-s390- 50 /bin/java test_increment_for
Завис :) Моего терпения хватило на полчаса. 

time /opt/ibm/java2-s390- 50 /bin/java test_increment_while
I= 0 
I= 10000000000 

real    1m13.126s
user    1m11.317s
sys     0m0.253s

Типа выводы: JDK-1.5 вполне достойно работает на отнюдь не самой шустрой на сегодняшний день машинке класса System z. А ведь есть гораздо более мощные машины, да и про zAAP не забываем.
На самом деле тест ни о чем не говорит совершенно. :) Сравнение непонятно чего и непонятно зачем. Тесты нужны более сложные.
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34671138
Исходник программ для тестов
...
Рейтинг: 0 / 0
Странности с производительностью. PC vs Z/OS
    #34671239
Если речь про C/C++, то вот еще один тест, на том же z/OS.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
#pragma filetag("IBM-1025")                               
#include <errno.h>                                        
#include <stdio.h>                                        
#include <stdlib.h>                                       
#include <string.h>                                       
int main (int argc, char argv[])                          
{                                                         
  printf( "sizeof(long long) = %i\n", sizeof(long long) );
  for ( long long ll= 0 ; ll<10000000000LL; ll++ );         
}                                                         
Компилировал в 31-бит режим компилятором CCNDRVR, процедура CBC.SCCNPRC(CBCCB)
Завтра попробую скомпилировать для 64-бит.
Время исполнения программы: ~8 минут
Протокол исполнения:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
 16 . 30 . 57  JOB00134 ---- THURSDAY,  19 JUL 2007 ----                              
 16 . 30 . 57  JOB00134  IRR010I  USERID HEV      IS ASSIGNED TO THIS JOB.            
 16 . 30 . 57  JOB00134  ICH70001I HEV      LAST ACCESS AT  16 : 30 : 13  ON THURSDAY, JULY 
 16 . 30 . 57  JOB00134  $HASP373 CPPRUN   STARTED - INIT  3     - CLASS A - SYS Z16    
 16 . 38 . 46  JOB00134  -                                              --TIMINGS (MIN
 16 . 38 . 46  JOB00134  -STEPNAME PROCSTEP    RC   EXCP   CONN    TCB    SRB  CLOCK  
 16 . 38 . 46  JOB00134  -STEP1                 00       23       10     7 . 26     . 00      7 . 8   
 16 . 38 . 46  JOB00134  -CPPRUN   ENDED.  NAME-                     TOTAL TCB CPU TIM
 16 . 38 . 46  JOB00134  $HASP395 CPPRUN   ENDED                                      
------ JES2 JOB STATISTICS ------                                               
   19  JUL  2007  JOB EXECUTION DATE                                                
             6  CARDS READ                                                        
            37  SYSOUT PRINT RECORDS                                              
             0  SYSOUT PUNCH RECORDS                                              
             2  SYSOUT SPOOL KBYTES                                               
          7 . 82  MINUTES EXECUTION TIME                                            
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Странности с производительностью. PC vs Z/OS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]