crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Анализатор процессов, Требуется инструмент для отладки многопоточной/процессной системы
ifritee
  опции профиля:
сообщение 8.2.2013, 0:13
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 16.5.2012
Пользователь №: 3388

Спасибо сказали: 0 раз(а)




Репутация:   0  


Всем доброго времени суток. Подскажите пожалуйста графический анализатор работы многопоточной и многопроцессной программы (для RTOS на основе Linux). Точнее, некий аналог WindView для VxWorks, т. е. программу, которая бы наглядно показала как ведут себя потоки (перехватывают процессоры, забирают вычислительные мощности машины...). Сейчас все делается в ручную, что очень неудобно, т.к. не видно когда поток спит,а когда выполняет полезную работу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 8.2.2013, 7:02
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9634
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 769 раз(а)




Репутация:   94  


а те которые идут с Гномом и КДЕ, системные мониторы, они не подходят?
(Там ведь статус процесса указывается, активен/пасивен/зомби)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 8.2.2013, 7:39
Сообщение #3


Профессионал
*****

Группа: Модератор
Сообщений: 1555
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 211 раз(а)




Репутация:   12  


Litkevich Yuriy, системным монитором ты перехват процессора не увидишь.

а так, смотря какова цель и глубина исследования. RTOS обычно очень мелки и на них не развернуть какой-то серьёзный отладочный инструмент.

можно попробовать специфические анализаторы, которые зависят от процессора: Intel VTune и у AMD есть какой-то свой анализатор, я не помню названия, можно погуглить, он у них на официальном сайте бесплатно для скачивания лежит.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ifritee
  опции профиля:
сообщение 8.2.2013, 11:10
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 16.5.2012
Пользователь №: 3388

Спасибо сказали: 0 раз(а)




Репутация:   0  


К сожалению, эти инструменты не подходят - работа ведется на Эльбрус 90микро, а там какой-то полу самодельный процессор. Поэтому желательно, чтоб анализатор был с открытыми исходниками, чтобы внести изменения при необходимости.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 8.2.2013, 19:32
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9634
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 769 раз(а)




Репутация:   94  


Цитата(ifritee @ 8.2.2013, 13:10) *
Эльбрус 90микро, а там какой-то полу самодельный процессор.
у них вроде разновидность Спарка была.
А поддержки у них нет, может есть готовые инструменты?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 8.2.2013, 19:37
Сообщение #6


Профессионал
*****

Группа: Модератор
Сообщений: 1555
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 211 раз(а)




Репутация:   12  


под линюкс практически всё с открытыми исходниками. но это не поможет. потому что все анализаторы потоков процессорно-зависимые. или слишком мощные и жручие, их не поставить на RTOS. в таких случаях только самопальные счётчики прикручивать можно и смотреть, кто сколько съел. да и это может оказаться весьма приблизительно, ибо не все процессоры позволяют это точно замерить.
если это линюкс, можно попробовать скомпилить проект под общераспространённую платформу (если он не сильно железоориентированный), отладить взаимодействие потоков в нормальном мощном отладчике типа интелловского, а потом уже готовый код засунуть обратно под свою платформу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ifritee
  опции профиля:
сообщение 8.2.2013, 20:06
Сообщение #7


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 16.5.2012
Пользователь №: 3388

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Litkevich Yuriy @ 8.2.2013, 20:32) *
Цитата(ifritee @ 8.2.2013, 13:10) *
Эльбрус 90микро, а там какой-то полу самодельный процессор.
у них вроде разновидность Спарка была.
А поддержки у них нет, может есть готовые инструменты?

Да, там стоит процессор на основе SPARC v8, но самодельная ОС. А соответственно, те инструменты, которые предоставляет Oracle (Sun) не работают. Кроме кросс компилятора разработчик ничего не поставляет. Работаю пока только с top, gdb, gprof...

Цитата(Iron Bug @ 8.2.2013, 20:37) *
можно попробовать скомпилить проект под общераспространённую платформу (если он не сильно железоориентированный), отладить взаимодействие потоков в нормальном мощном отладчике типа интелловского, а потом уже готовый код засунуть обратно под свою платформу.

Примерно так сейчас и поступаем - пишем программу, отлаживаем под QNX все многопоточные части кода (инструментарий просто обалденный, есть все, что надо) и затем уже пляшем с эльбрусом. Но хотелось чего-то более приближенного к целевой машине, потому что эльбрус черт-те как работает.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 8.2.2013, 20:22
Сообщение #8


фрилансер
******

Группа: Участник
Сообщений: 2809
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 191 раз(а)




Репутация:   34  


ifritee, а Erlang-компилятора нет под эту платформу ? Решит все проблемы, судя по моим, в общем-то, начальным знаниям по этому языку )

Он заточен под прозрачное использование потоков. Ну, правда, программу придётся написать заново
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 16.1.2018, 16:56