Skip to content

FIFO trace streaming demo#1

Open
manachat wants to merge 1 commit into
masterfrom
fifo_streamer
Open

FIFO trace streaming demo#1
manachat wants to merge 1 commit into
masterfrom
fifo_streamer

Conversation

@manachat

Copy link
Copy Markdown
Member

Демо поставки стектрейосв в online-режиме через FIFO.

По итогам, пока не имеет практического применения и потенциала развития из-за ряда проблем:

Профилировщик в обычном режиме работает с трейсами представленными в виде указателей на jmethodId, резолвинг их в непосредственные имена методов происходит уже на этапе постпроцессинга. Для небольших приложений с не очень глубокими стектрейсами возможно проигрыш будет не очень тяжелый, но оверхед станет линейно заметнее с ростом глубины. Купировать проблему можно было бы переиспользовав callTraceStorage для кеширования отрендеренного имени, но решение все еще сомнительное.
По сути все методы непосредственно постобработки трейсов заточены под offline однопоточный постпроцессинг и имеют не thread-safe реализацию, из-за этого компоненты невозможно использовать с CONCURRENCY_LEVEL больше 1 [без явных блокировок]
По итогам данную ветвь можно в целом признать тупиковой, ибо сложности которые необходимо преодолеть для безопасной работы не дают сильного выигрыша перед обычным запуском в loop режиме с синхронным постпроцессингом

@manachat manachat added the wontfix This will not be worked on label May 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

wontfix This will not be worked on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant