- Лекция
- Место
В рамках технологического семинара 28 марта состоится состоится рассказ об одном методе "неинвазивного" (т.е. безболезненного) профилирования разделяемых библиотек.
Аннотация
В докладе будет рассказываться об Elfperf свободном инструменте для неинвазивного("безболезненного") профилирования разделяемых библиотек, разработанного в рамках студенческого проекта компании ЕМС.
В первой части будет дана постановка задачи и описан принцип работы динамического загрузчка (ld-linux.so):
- какие бывают профилировщики;
- что такое неинвазивное профилирование и в каких случаях оно может потребоваться;
- описание процессов релокации, динамического связывания/загрузки функций из разделяемых библиотек;
- исходники ld-linux.so и libdl.so, особенности, на которые необходимо обратить внимание.
Во второй части доклада будет дано конкретное описание процесса решения задачи неинвазивного профилирования:
- описана архитектура профилировщика;
- рассказано про механизм "оберток" и "перенаправителей", позволяющий собирать статистику о вызовах функций из разделяемых библиотек;
- взаимодействие разнородных компонентов профилировщика через разделяемую память;
- описан подход к измерению времени;
Также планируется демонстрация работы Elfperf в полевых условиях.
О докладчиках
Эдуард Рябиков, студент 4-го курса кафедры МО ЭВМ СПбГЭТУ "ЛЭТИ". Является постоянным участником лаборатории OSLL и активным членом сообщества FRUCT. Занимается разработкой для Linux, Android/iOS и геоинформационных сервисов. Проекты: Elfperf, geo2tag (Server-side platform for LBS services), Mhb for Android/iOS (Medical handbook for mobile devices) Интересы: Linux, C/C++.
Марк Заславский, студент 5 курса Института Информационных Технологий и Управления СПБГПУ, сотрудник Open Source and Linux Lab. В рамках профессиональной деятельности занимался кросс-платформенной разработкой под различные операционные системы (Maemo, MeeGo, Android, iOS, Debian, CentOS), разработкой и внедрением систем непрерывной интеграции, созданием и сборкой deb и rpm пакетов для кроссплатформенных проектов, оптимизацией быстродействия существующих решений.
Участник проектов
- разработка и оптимизация производительности платформы Geo2Tag (первая Open-Source платформа для location-based services),
- разработка Elfperf (Open-Source профилировщик для разделяемых библиотек в Linux),
- Автоматизация тестирования OpenSSL для платформы MeeGo,
- Mhb for Android/iOS (Medical handbook for mobile devices).
- Победитель конкурса статей об операционной системе MeeGo.
- Обладатель авторского свидетельства компонентов платформы Geo2Tag.
- Профессиональные интересы Linux-разработка, кроссплатформенная разработка.