Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Профилирование приложений. 
:(
    Опции темы
newfag
  Дата 17.6.2009, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 17.6.2009

Репутация: нет
Всего: нет



В наследство достался проект приложения постоянно создающего много процессов (не потоков, а именно процессов). При увеличении на него объема входящих данных, начинает необоснованно тормозить. Процессор задействован не на 100% памяти свободной достаточно. Поэтому остается только внутрение локи при доступе к каким-то общим для процессов данным. Полностью восстанавливать логику проекта долго и это время хотелось бы сэкономить, посоветуйте инструмент для профилировки многопроцессных приложений и поиска возможных узких мест.
ОС - Linux.
PM MAIL   Вверх
Любитель
Дата 17.6.2009, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: нет
Всего: 92



А что за "входящие данные"? Может проблема банально в загрузке этих данных?


--------------------
PM MAIL ICQ Skype   Вверх
newfag
Дата 17.6.2009, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 17.6.2009

Репутация: нет
Всего: нет



Просто запрос из сокета и туда практически сразу короткий ответ.
Проблема скорее всего именно в межпроцессном взаимодействии. При тех же объемах запросов в рамках меньшего количества процессов, или вообще одного, скорость работы отличается на порядок. Но задача стоит именно так, чтобы было разделение на несколько процессов.
PM MAIL   Вверх
xvr
Дата 18.6.2009, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 35
Всего: 223



Создание процесса - это довольно дорогая операция
Межпроцессное взаимодействие - это тоже довольно дорого
Если система постоянно делает и то и другое, то не на что другое у нее времени уже не останется  smile 
Для профилирования можно взять perfmon2 или VTune с Intel'а (есть Linux версии)

PM MAIL   Вверх
jonie
Дата 18.6.2009, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



intelVTune for linux умеет профилировать.. да есть и бесплатные вещи


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

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

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0915 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.