Tomato Engine: Как мы создавали онлайн шутер с авторитарным серверомDevGAMM Conference
Трудности и их решения, в начинающей группе разработчиков игр:
1. Зачем нам авторитарный сервер, если метод синхронизации в разы проще дешевле?!
2. Создание редактора зон, подготовка карт для сервера и клиента.
3. Как мы ускоряли симуляцию физики на сервере.
4. Быстрый обмен данными, экономия оперативной памяти, кластера и другое…
2016-12-03 01 Вадим Литвинов. От 2D к 3D обзор методов реконструкции поверхно...Омские ИТ-субботники
Докладчик: Вадим Литвинов, Hola Networks Ltd., Новосибирск.
«Надоели Ангуляры и Аджайлы? Устал от Scrum и NoSQL? Тогда приходи и мы погрузимся в увлекательный мир математики и увидим как с её помощью можно просто и элегантно решать сложные задачи.
Конкретно на этом докладе мы поговорим о том, как воссоздать 3D модель поверхности по видеозаписи.
О себе: родился и живу в Новосибирске, но молодость свою провел во Франции, где я прожил суммарно 15 лет. Несмотря на то что я закончил институт по специальности
“Компьютерные сети и связь”, админ из меня не вышел. Занимался я в основном
научными вычислениями. Защитил диссер по машинному зрению. Работал над многими интересными вещами от расчетов сопромата до робототехники. Самый мой любимый проект это разработка прототипа машины без водителя в 2010/11 годах. В настоящий момент работаю над Video CDN нового поколения в Hola Networks Ltd.»
МЕТОДИКА СБОРКИ И ОБРАБОТКИ ДАННЫХ, ПОЛУЧЕННЫХ В ПРОЦЕССЕ 3D-СКАНИРОВАНИЯITMO University
Множество существующих на сегодняшний день программных пакетов 3D-сканирования дает широкие возможности по обработке получаемых в процессе регистрации поверхности данных. Тем не менее, специфика данной области накладывает определенные требования, и во всех этих программах присутствует ряд схожих функций, которые, в свою очередь, определяют алгоритм первоначальной работы с результатами сканирования. В данной работе предлагается общий алгоритм, являющийся результатом практического многолетнего опыта автора по сборке «сырого» материала в единую электронную копию и последующей обработки.
Tomato Engine: Как мы создавали онлайн шутер с авторитарным серверомDevGAMM Conference
Трудности и их решения, в начинающей группе разработчиков игр:
1. Зачем нам авторитарный сервер, если метод синхронизации в разы проще дешевле?!
2. Создание редактора зон, подготовка карт для сервера и клиента.
3. Как мы ускоряли симуляцию физики на сервере.
4. Быстрый обмен данными, экономия оперативной памяти, кластера и другое…
2016-12-03 01 Вадим Литвинов. От 2D к 3D обзор методов реконструкции поверхно...Омские ИТ-субботники
Докладчик: Вадим Литвинов, Hola Networks Ltd., Новосибирск.
«Надоели Ангуляры и Аджайлы? Устал от Scrum и NoSQL? Тогда приходи и мы погрузимся в увлекательный мир математики и увидим как с её помощью можно просто и элегантно решать сложные задачи.
Конкретно на этом докладе мы поговорим о том, как воссоздать 3D модель поверхности по видеозаписи.
О себе: родился и живу в Новосибирске, но молодость свою провел во Франции, где я прожил суммарно 15 лет. Несмотря на то что я закончил институт по специальности
“Компьютерные сети и связь”, админ из меня не вышел. Занимался я в основном
научными вычислениями. Защитил диссер по машинному зрению. Работал над многими интересными вещами от расчетов сопромата до робототехники. Самый мой любимый проект это разработка прототипа машины без водителя в 2010/11 годах. В настоящий момент работаю над Video CDN нового поколения в Hola Networks Ltd.»
МЕТОДИКА СБОРКИ И ОБРАБОТКИ ДАННЫХ, ПОЛУЧЕННЫХ В ПРОЦЕССЕ 3D-СКАНИРОВАНИЯITMO University
Множество существующих на сегодняшний день программных пакетов 3D-сканирования дает широкие возможности по обработке получаемых в процессе регистрации поверхности данных. Тем не менее, специфика данной области накладывает определенные требования, и во всех этих программах присутствует ряд схожих функций, которые, в свою очередь, определяют алгоритм первоначальной работы с результатами сканирования. В данной работе предлагается общий алгоритм, являющийся результатом практического многолетнего опыта автора по сборке «сырого» материала в единую электронную копию и последующей обработки.
Реклама со скоростью света. Презентация Сергея Жемжицкого на High Load++ 2014CleverDATA
1 ноября 2014 г. CTO CleverDATA Сергей Жемжицкий в рамках конференции High Load 2014 представил аудитории презентацию по построении DMP платформы с возможностью обработки 100% входящих запросов на базе продукта Aerospike
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"Fwdays
- как ошибка выбора идентификатора пользователя, обнаруженная после запуска проекта, чуть не стоила 2 лет разработки
- как мы боролись с перегруженным mysql когда даже включение binlog убивает сервер
- почистил партицию mysql под нагрузкой - получи мертвый сервер
- как верстальщик поменял верстку серча и уложил продукт на 4 часа
- ошибка в ядре php которая привела даунтайм на несколько часов
- как незнание особенностей работы GC у redis обошлось в $50к чистой прибыли
- добавлением или удалением серверов из пула memcached инвалидировали весь кэш (кривые настройки php клиента Memcache/Memcached)
- как поправив тест потерять 2 миллиона пользовательских писем
- как релиз одного проекта крэшил хелсчеки соседнего проекта
- самый большой фейл с системами очередей и статистикой: ивенты терялись годами
Не бойся, это всего лишь данные... просто их многоRoman Dvornov
За последние 15 лет веб сильно изменился и ускорился. Но большинство по-прежнему боится большого количества данных и сложной логики на клиенте. Потому что "тормозит".
Я хочу сломать стереотипы и показать, как начать делать крутые штуки на client-side. Тысячи и сотни тысяч объектов, разные типы, зависимые вычисляемые свойства, агрегация, множество вариантов отображения. Все это в вашем браузере. Без тормозов, регистраций, смс.
Видео этого доклада на конференции DUMP, Екатеринбург, 14 марта 2014: https://vimeo.com/90836493
Семинар в Академии информационных систем. Мы рассмотрели схемы надежности инфраструктуры ЦОД tier согласно требованиям стандартов в области ЦОД - Bisci 002-2011, TIA/EIA-942, Uptime Institute. Рассмотрели влияние различных систем друг на друга - охлаждение и электроснабжение.
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000Cisco Russia
1. Архитектура линейного шасси
2. Линейные карты для Cisco NCS6000
3. Оптические трансиверы
4. Архитектура мультистоечной конфигурации
5. Особенности операционной системы
JS Fest 2019. Игорь Березин и Николай Крещенко. Эволюция архитектуры многогра...JSFestUA
За 3 года существования, “Koyfin” претерпел множество изменений.
Проект прошел путь от MVP до сложной системы сбора и обработки большого количества финансовых данных с десятками микросервисов и тоннами логики. Как жить, когда проект содержит огромное количество репозиториев, микросервисы отправляют и читают из шины тысячи разношерстных сообщений в минуту и кажется, что от попыток за всем уследить скоро взорвется голова? Как поддерживать консистентность, скорость, отказоустойчивость и при этом сохранять гибкость?
Мы рассмотрим с Вами основные проблемы, с которыми мы столкнулись, и поделимся результатами творческих мук в поиске их решения. Расскажем об инструментах и техниках, которые помогают нам каждый день
Опыт разработки статического анализатора кодаAndrey Karpov
Один из основателей проекта PVS-Studio расскажет об опыте разработки статического анализатора кода C++. У инструментов статического анализа кода существует "проблема айсберга". От пользователей скрыты сложные механизмы анализа кода, и иногда им кажется, что статические анализаторы – это просто какие-то утилиты, ищущие опечатки с помощью регулярных выражений. Автор доклада постарается в общих чертах описать, как всё обстоит на самом деле. Он покажет на примерах, почему нормальный анализ с помощью регулярных выражений нереализуем, что такое Data Flow анализ, а также расскажет о других технологиях, применяемых при анализе кода. Вкратце будет затронут вопрос использования нейронных сетей, обсуждение которых сейчас является очень модной темой, и рассказано, почему с точки зрения анализа кода отношение к этому направлению является очень скептическим.
Сравнение TCP/IP стека Windows Vista / Server 2008 и Windows XP / Server 2003Andrey Beshkov
В данном докладе мы посмотрим какие новые возможности появились в стеке TCP/IP нового поколения ОС Windows Server 2008 и Windows Vista. Так же мы сравним новый стек TCP/IP со старым стеком ОС Windows XP/ Windows Server 2003.
Презентация к магистерской диссертации на тему: "Разработка метода управления сетью роботов", 2015 год.
В результате:
- разработан метод управления сетью роботов требующий минимальных затрат энергии;
- разработана имитационная модель сети роботов;
- проведено имитационное моделирование сети роботов;
- выполнено исследование энергозатрат, связанное с передачей данных между участниками сети.
EdCrunch 2018 - Skyeng - EdTech product scaling: How to influence key growth ...Michael Karpov
Skyeng company case:
"EdTech product scaling: How to influence key growth indicators and achieve rapid progress. Product VS Marketing look"
Global conference for technology in education #EdCrunch
https://2018.edcrunch.ru/en/
Movement to business goals: Data, Team, Users (4C Conference)Michael Karpov
In this talk Mikhail Karpov discuss the methods used to move to business goals faster on example of VK.com processes, including teams flexible structure and feedback loop from service audience
More Related Content
Similar to якобовский - введение в параллельное программирование (3)
Реклама со скоростью света. Презентация Сергея Жемжицкого на High Load++ 2014CleverDATA
1 ноября 2014 г. CTO CleverDATA Сергей Жемжицкий в рамках конференции High Load 2014 представил аудитории презентацию по построении DMP платформы с возможностью обработки 100% входящих запросов на базе продукта Aerospike
Дмитрий Меньшиков "Топ-10 фейлов на реальном highload проекте"Fwdays
- как ошибка выбора идентификатора пользователя, обнаруженная после запуска проекта, чуть не стоила 2 лет разработки
- как мы боролись с перегруженным mysql когда даже включение binlog убивает сервер
- почистил партицию mysql под нагрузкой - получи мертвый сервер
- как верстальщик поменял верстку серча и уложил продукт на 4 часа
- ошибка в ядре php которая привела даунтайм на несколько часов
- как незнание особенностей работы GC у redis обошлось в $50к чистой прибыли
- добавлением или удалением серверов из пула memcached инвалидировали весь кэш (кривые настройки php клиента Memcache/Memcached)
- как поправив тест потерять 2 миллиона пользовательских писем
- как релиз одного проекта крэшил хелсчеки соседнего проекта
- самый большой фейл с системами очередей и статистикой: ивенты терялись годами
Не бойся, это всего лишь данные... просто их многоRoman Dvornov
За последние 15 лет веб сильно изменился и ускорился. Но большинство по-прежнему боится большого количества данных и сложной логики на клиенте. Потому что "тормозит".
Я хочу сломать стереотипы и показать, как начать делать крутые штуки на client-side. Тысячи и сотни тысяч объектов, разные типы, зависимые вычисляемые свойства, агрегация, множество вариантов отображения. Все это в вашем браузере. Без тормозов, регистраций, смс.
Видео этого доклада на конференции DUMP, Екатеринбург, 14 марта 2014: https://vimeo.com/90836493
Семинар в Академии информационных систем. Мы рассмотрели схемы надежности инфраструктуры ЦОД tier согласно требованиям стандартов в области ЦОД - Bisci 002-2011, TIA/EIA-942, Uptime Institute. Рассмотрели влияние различных систем друг на друга - охлаждение и электроснабжение.
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000Cisco Russia
1. Архитектура линейного шасси
2. Линейные карты для Cisco NCS6000
3. Оптические трансиверы
4. Архитектура мультистоечной конфигурации
5. Особенности операционной системы
JS Fest 2019. Игорь Березин и Николай Крещенко. Эволюция архитектуры многогра...JSFestUA
За 3 года существования, “Koyfin” претерпел множество изменений.
Проект прошел путь от MVP до сложной системы сбора и обработки большого количества финансовых данных с десятками микросервисов и тоннами логики. Как жить, когда проект содержит огромное количество репозиториев, микросервисы отправляют и читают из шины тысячи разношерстных сообщений в минуту и кажется, что от попыток за всем уследить скоро взорвется голова? Как поддерживать консистентность, скорость, отказоустойчивость и при этом сохранять гибкость?
Мы рассмотрим с Вами основные проблемы, с которыми мы столкнулись, и поделимся результатами творческих мук в поиске их решения. Расскажем об инструментах и техниках, которые помогают нам каждый день
Опыт разработки статического анализатора кодаAndrey Karpov
Один из основателей проекта PVS-Studio расскажет об опыте разработки статического анализатора кода C++. У инструментов статического анализа кода существует "проблема айсберга". От пользователей скрыты сложные механизмы анализа кода, и иногда им кажется, что статические анализаторы – это просто какие-то утилиты, ищущие опечатки с помощью регулярных выражений. Автор доклада постарается в общих чертах описать, как всё обстоит на самом деле. Он покажет на примерах, почему нормальный анализ с помощью регулярных выражений нереализуем, что такое Data Flow анализ, а также расскажет о других технологиях, применяемых при анализе кода. Вкратце будет затронут вопрос использования нейронных сетей, обсуждение которых сейчас является очень модной темой, и рассказано, почему с точки зрения анализа кода отношение к этому направлению является очень скептическим.
Сравнение TCP/IP стека Windows Vista / Server 2008 и Windows XP / Server 2003Andrey Beshkov
В данном докладе мы посмотрим какие новые возможности появились в стеке TCP/IP нового поколения ОС Windows Server 2008 и Windows Vista. Так же мы сравним новый стек TCP/IP со старым стеком ОС Windows XP/ Windows Server 2003.
Презентация к магистерской диссертации на тему: "Разработка метода управления сетью роботов", 2015 год.
В результате:
- разработан метод управления сетью роботов требующий минимальных затрат энергии;
- разработана имитационная модель сети роботов;
- проведено имитационное моделирование сети роботов;
- выполнено исследование энергозатрат, связанное с передачей данных между участниками сети.
EdCrunch 2018 - Skyeng - EdTech product scaling: How to influence key growth ...Michael Karpov
Skyeng company case:
"EdTech product scaling: How to influence key growth indicators and achieve rapid progress. Product VS Marketing look"
Global conference for technology in education #EdCrunch
https://2018.edcrunch.ru/en/
Movement to business goals: Data, Team, Users (4C Conference)Michael Karpov
In this talk Mikhail Karpov discuss the methods used to move to business goals faster on example of VK.com processes, including teams flexible structure and feedback loop from service audience
"Пользователи: сигнал из космоса". CodeFest mini 2012Michael Karpov
О способах получения обратной связи от пользователей в российских и иностранных интернет-компаниях.
Также, на основе различных жизненных кейсов рассмотрим их полезность и применимость.
Михаил рассмотрит основные случаи и всякие примеры применения на основе Яндекса и нескольких других российских и иностранных компаний.
Как сделать команде приятное - Михаил Карпов (Яндекс)Michael Karpov
Команде приятное можно сделать разными способами.
Этот доклад о том, как это сделать с помощью вашего процесса.
Многие понимают то, что важно вовлекать команду в продукт, но также важно вовлекать команду в ваш процесс.
Для этого ваш процесс должен коротко и доходчиво отвечать на вопросы команды.
О них и поговорим.
сбор требований с помощью Innovation gamesMichael Karpov
За основу были взяты бизнес-игры от Люка Хоммана: innovationgames.com
Они представлены ниже в презентации: "Начни новый день", "Product Box", "Воспоминания о будущем", "Удиви клиента", "Катер", "Паутина".
Практическое занятие было не лишено соревновательного характера:
в первой части команды "разработчиков" собирали неявные знания с "пользователей", а во второй части должны были предложить им каждый свой продукт.
Естественно, что пользователи выбирают наиболее понравившийся (то есть наиболее удовлетворяющий их потребностям) и команда, предложившая данный продукт, побеждает.
Зачем нам Это? или Как продать agile командеMichael Karpov
Мы все сталкиваемся с ситуациями когда сложно работать с Заказчиком по Agile и уговорить его на подобный способ коммуникации.
Также, часто команде сложно уговорить своего менеджера.
Но!
Бывает и иначе: менеджер предлагает внедрять Agile, а команда "не до конца уверена"...
Именно о такой ситуации и рассказывает этот доклад!
якобовский - введение в параллельное программирование (3)
1. Визуализация в распределенных системах Институт математического моделирования Российской академии наук mail: [email_address] web: http://lira.imamod.ru Нижний Новгород 2009 М.В.Якобовский
2.
3.
4. Вычислительная среда Выбор математической модели и солверов. Сопоставление атрибутам начальных и граничных условий, физических параметров. Выбор сервер а вычислений Выбор сервер а визуализации Проект Построение геометрической модели, поверхностной и объемной сетки. Задание атрибутов. Формирование варианта задания Расчет варианта задания Файлы результатов В изуализация результатов
22. Двухуровневое разбиение Сетка предварительно разбивается на большое число микродоменов, образующих макрограф Вершины макрографа распределяются по процессорам I II
23. Потоковая обработка 40 процессоров, полное чтение файла 40 процессоров, чтение фрагментов файла Кол-во исходных точек Время чтения файлов данных, мин:сек Общее время работы, мин:сек Кол-во полученных точек 100 млн. 0:08 0:13 1 681 252 млн. 4:38 36:51 3 010 512 млн. 32:07 Не хватило памяти - 1000 млн. 56:54 Не хватило памяти - Кол-во исходных точек регулярной сетки Число фрагментов, на которые разбивался каждый файл Общее время работы, мин:сек Кол-во полученных точек изоповерхности 252 млн. 1 24:51 2 997 252 млн. 8 4:20 5 891 252 млн. 64 0:14 11 198 512 млн. 8 41:40 7 996 512 млн. 27 0:25 10 997 512 млн. 64 0:26 14 026 1000 млн. 64 - 56:54 83:25 19 534 1000 млн. 27 0:45 16 171 1000 млн. 8 2:34 13 218
45. Нерегулярная тетраэдральная сетка 110 533 834 узлов 659 316 736 тетраэдров 2 589 184 поверхностных треугольников Время выполнения программы на 100 процессорах МВС-15000ВМ составляет 270 секунд (с учетом записи данных на диск). Время равномерного измельчения – 30 секунд. Дисковое пространство 12.33 Гб
52. Процессор, охлаждаемый медным радиатором CPU Мощность 65 Вт 10 мм ~1.4 мм Толщина 0.3 мм 7 мм …… 97.5 мм , 78 медных пластин 100 мм …… Поток воздуха : T=20C, .004-.005 м 3 / с Cu 30x30 мм 35 мм до границы
53. Зависимость эффективности от числа ядер Конфигурация: 78 тонких ребер (0.3 мм) на радиаторе Сетка: 1000 х 3500 х 150 = 525 млн. Параллельная реализация: MPI + нити (8 нитей на узле)
04.06.10 Doclad14 Исследованы возможности работы системы распределённой визуализации в рамках технологии GRID , на нескольких многопроцессорных машинах, территориально удалённых и связанных медленными каналами связи. В работе приводятся результаты тестирования системы распределённой визуализации при обработки данных одновременно на многопроцессорных машинах, содержащих различное количество вычислительных модулей и обладающих существенно отличающимися характеристиками производительности. Тестирование на двух кластерах (12 Celeron -850 Mhz и 12 2х PentiumIII -600Mhz), связанных 10 Mbit -ной сетью подтверждает высокую эффективность разработанных программ и показывает достоверность полученных результатов.
Расчет выполнялся на нерегулярной тетраэдральной сетке. Показана граница и сечение расчетной сетки. Нерегулярность сетки позволяет сосредоточить большинство узлов в подобластях с сильно меняющимся решением , где необходимо исследовать картину процесса более детальн о . Результаты расчетов, определенные в узлах данной сетки, представляют собой трехмерные скалярные данные.
Сначала рассмотрим результаты работы основного алгоритма сжатия на данных относительно небольшого размера. Исходные данные - изоповерхност ь давления (значение 1,11) , полученного при расчете задачи обтекания на тетраэдральной сетке, состоящей из 117075 узлов. Во всех случаях сжатие занимало всего несколько секунд даже с использованием процессора 0,6 Ghz . Как можно заметить, уже для относительно небольших данных коэффициенты сжатия достаточно высоки.
Исходные данные - изоповерхност ь давления (значение 1,117) , извлеченн ая из тех же данных расчета. Можно заметить, что все мелкие изолированные куски поверхности при сжатии сохраняются. Сохраняется и отверстие ( контур, не заполненный треугольниками) . В алгоритме реализована блокировка стягивания отверстий, даже если их исчезновение не нарушает требуемую точность. Отверстиям разрешено сокращаться минимум до одного треугольника.
04.06.10 Doclad14 2-stage partitioning
По сравнению со сжатием поверхностей метод имеет невысокие коэффициенты сжатия и выполняется за существенно большее время. Другим недостатком алгоритма является то, что в нем не существует строгого контроля за формой изоповерхностей получаемых данных. Форма изоповерхностей может заметно изменяться, особенно в приграничных областях. Однако в целом вид изоповерхности сохраняется. На рисунке слева – изоповерхность исходных данных, справа – изоповерхность данных, сжатых с точностью 1%. Сжатие выполнялось на системе с 2.6Ghz.
Параллельное сжатие трехмерных скалярных данных выполняется по той же схеме, что и для поверхностей. Для проведения теста были созданы 40 частей сетки с общим числом узлом в 7 миллионов. На полученную сетку с помощью имеющейся расчетной были проинтерполированы значения сеточной функции, и далее выполнено сжатие полученных данных на 40 процессорах. Показан результат сжатия с точностью 1%.
04.06.10 Doclad14 Enrico Puppo, Larry Davis, Daniel DeMenthon, Y. Ansel Teng. Michael Garland and Paul S. Heckbert.
04.06.10 Doclad14 Якобовский
04.06.10 Doclad14 Полученные фрагменты аппроксимирующей поверхности передаются на коммуникационную часть, дополнительно сжимаются уже в совокупности и поступают на клиентскую часть для непосредственного отображения. Полученные таким образом на клиентской части данные, представляют собой огрубленный образ изоповерхности, который можно изучать с разных точек 3-х мерного пространства. На базе разработанных алгоритмов распределённой визуализации реализован пакет программ, позволяющий решать задачи визуализации для большого количества задач математического моделирования, связанных с проведением крупномасштабных численных экспериментов с использованием многопроцессорной вычислительной техники.
04.06.10 Doclad14 Исследованы возможности работы системы распределённой визуализации в рамках технологии GRID , на нескольких многопроцессорных машинах, территориально удалённых и связанных медленными каналами связи. В работе приводятся результаты тестирования системы распределённой визуализации при обработки данных одновременно на многопроцессорных машинах, содержащих различное количество вычислительных модулей и обладающих существенно отличающимися характеристиками производительности. Тестирование на двух кластерах (12 Celeron -850 Mhz и 12 2х PentiumIII -600Mhz), связанных 10 Mbit -ной сетью подтверждает высокую эффективность разработанных программ и показывает достоверность полученных результатов.
В численных экспериментах удалось показать, что радиаторы рассматриваемой конструкции должны иметь не менее 25 ребер для предохранения процессора от перегрева. Оптимальной является конфигурация с количеством ребер более 75-100. Реализованная в технологическом цикле конфигурация с числом ребер 78 попадает в данный диапазон. При этом процессор с потребляемой мощностью 65 Вт даже в переходном режиме не нагревается выше 70 град. С (допуск по температуре).