![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| jGorets |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
Задача - распараллелить программу. У меня есть большое количество номеров, с каждым их них надо сделать некоторые операции. 1. делаю выборку из БД уникальных номеров 2. создаю ExecutorService фиксированное кол-во потоков равных кол-ву процессоров на машине 3. так как каждая операция производится по сети, создаю AS400JDBCConnectionPool с 12 открытыми ячейками. 4. Запуская программу, вроде бы работает как ожидается, но прироста 0. в имя потока выводит как пул-1-нить-1,2,3,4. Вот тут подозреваю, что программа работает с одним пулом. Подскажите, так и должно быть? =) или как правильно каждому потому давать свой коннекшн
|
|||
|
||||
| Stolzen |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 23 Всего: 48 |
||||
|
||||
| jGorets |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
я в общем так и думал, просто смущяет, что прироста производительности нету =( а может такое быть из-за постоянного логирования?))
|
|||
|
||||
| jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
Вполне. Дисковое I/O не самая быстрая штука. А Вы вообще профайлером смотрели, что именно тормозит? По сути замеры - единственное, что может реально показать узкие места. Если просто вычитать в книжке, что много потоков лучше, чем один, то эффекта не будет - узкое место может быть совсем в другом. -------------------- Opinions are like assholes — everybody has one |
|||
|
||||
| jGorets |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
в том то и дело что замерял, засекал время перед стартов не распаралеленой процедуры и после выводил разницу, так же и на распаралелиной - выполнялось даже дольше =), потому начал думать на логи, так как их в 4 раза больше начало выводится в консоль.
в том то и дело что "узких" мест в общем нету, так как обработка одного счета проходит приблизительно за одно время, основная сложность в их количестве, так как их обычно больше 10к и раньше они обрабатывались последовательно, я сделал параллельно, деббагер показывать то что должен и вроде бы то что я ожидал, но прироста нету Спасибо, еще потестирую. Это сообщение отредактировал(а) jGorets - 28.9.2011, 13:41 |
||||
|
|||||
| jGorets |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
Поправил пул-коннектов, прирост в 2а раза на 4х процессорной машине, стоил ли попробовать "подкрутить":wizard еще?
|
|||
|
||||
| Stolzen |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 23 Всего: 48 |
А как поправили?
|
|||
|
||||
| jGorets |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 11.7.2010 Репутация: нет Всего: нет |
было пару методов возврата конекта, так вот юзался в некоторых не мой пулл, а старый |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |