Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемВиталий Наровчатов
1 А это – красавец Таганрог!
2 Если не хватит слайда – возьми этот!
3 Пирс Хаб IO петабайт Инетра оптимизация ТВ Приставка Клиент Сергей Нечаев Руководитель проектов, компания «Инетра» Специально для отдела МО ВВС ИВМиМГ СО РАН и Летней школы по параллельному программированию Виджеты iOS
4 ОТКЛЧТ МБЛН ТЛФН ПЖЛСТ
5 Давайте знакомиться!
6 A long time ago in a galaxy far, far away
7 Последние 5 лет Программист/архитектор Биллинг (тарификатор) Ведущий инженер Коллцентр (отчетность) Руководитель проектов Пирс (все про все)
8 О вас
9 Рекламная пауза
10 Компания «Инетра»
11 Наши продукты
12 Омск ТомскНижневартовск Новосибирск БийскБарнаулКемерово Владивосток Файлообменная сеть «Пирс» Здесь будет ваш город
13 На пользователей онлайн вам понадобится... IPMI; 16GB RAM; 8 3 Gbit/s network; 4 HDD; 2 независимых блока питания. 8*5000 Bogomips
14 Приставка «ПирсТВ» Чипсет Sigma Designs Мб оперативнои ̆ памяти 2 x 256 Мб системнои ̆ памяти ~332 Bogomips
15 Клиент Windows, Linux, Mac OS X ? bogomips ? окружение
16 Телевиджеты Управление пультом Ограниченный API
17 IOS
18 Они все такие разные и все-таки они вместе...
19 А требования – одинаковые! Быстрота Удобство Автообновление
20 Теперь ввод-вывод
21 Среди всех преждевременных бед оптимизация занимает почетное второе место, можете убедиться сами...
22 Чеклист Надо ли вообще эту задачу решать? Надо ли ее решать именно таким способом? Границы задачи и изменений Что мы можем сделать: что-то подкрутить или все переделать? Куда нужно приложить усилия: оценка алгоритмов и профилирование
23 От чего зависит время работы программы Cores/nodes bound CPU bound Cache bound Memory bound IO bound
24 Оптимизация IO Уменьшение объема выводимых данных Уменьшение количества системных вызовов Использование неблокирующих операций Уменьшение количества потоков Буферизация и двойная буферизация Мультиплексирование AIO
25 Бонус 1: когда же чертовы данные запишутся на диск?
26 Буфер приложения Жесткий диск Cache buffer OS Буфер ФС Дисковый кэш write(fd, buffer,size); fsync(fd);
27 Бонус 2: когда же чертовы данные будут доставлены получателю
28 Буфер приложения Буфер ОС Буфер приложения write(fd, buffer,size); Подтверждени е сеть read(fd, buffer,size);
29 This is Petabyte!!!
30 Бонус 2: Борьба с verlihub, 2009г Как мы сделали петабайт! Раунд 1: poll -> epoll Раунд 2: Итератор + epoll Раунд 3: accept в отдельном потоке. Раунд 4: Параметры стека протокола TCP/IP Раунд 5: Таймеры Раунд 6: Хэш без коллизий Раунд 7: Таймер "кто успел, тот и съел" Раунд N: пользовательский буфер же!
31 ПЖЛСТ ВПРС
32 Рекламная пауза!
33 Спасибо за внимание! удачи на школе!
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.