1. RoboWar Аннотация: Игра «Война роботов» построена на основе мультиагентного подхода к программированию. В этой игре команды роботов сражаются за обладание игровой территорией. Каждый участник проекта создаёт свой интеллект, управляющий поведением роботов. В первые три дня в проекте принимают участие все участники школы. По завершении проекта проводится турнир. |
2. Мультиплатформенное выполнение фрагментированных программ Руководитель: Перепёлкин Владислав Александрович Аннотация: Аннотация: Фрагментированная программа в своей основе состоит из множества подзадач, исполняющихся по мере готовности их входных данных. При этом одна и та же задача может быть реализована на нескольких различных платформах, например на Linux-CPU, CUDA-GPU, Browser-javascript, JavaVM, и так далее. Это позволяет выполнять фрагментированные программы на совокупности вычислителей с различными платформами, образующих единую распределённую исполнительную систему. Цель проекта – реализовать распределённый интерпретатор с языка LuNA (некоторого его подмножества) на базе различных платформ. |
3. Разработка компонентов HPC Community Cloud Руководитель: Городничев Максим Александрович Аннотация: Цель проекта HPC Community Cloud – создание программного инструментария для обеспечения доступа программных комплексов к высокопроизводительным вычислительным системам (ВВС), накопления и повторного использования программ для решения прикладных задач на ВВС, повышения уровня интерфейсов взаимодействия пользователей с ВВС, обеспечения доступа к учебным и справочным материалам в области суперкомпьютерных технологий и параллельного программирования. В настоящее время реализован прототип системы. Требуется:
|
4. Библиотека Sensonet Руководитель: Остапкевич Михаил Борисович Аннотация: Цель проекта: сбор данных с географически распределенных разнотипных датчиков и управление географически распределенными актуаторами. Актуальность проекта. В области сбора данных и управления активно разрабатывается большое число приложений. Широта областей применения огромна. Сложность в их разработке заключается в сложной системной части. Существует большое число видов оборудования, с которым надо взаимодействовать (много разных протоколов и интерфейсов). Если перейти от прототипа к рабочей системе, необходимо обеспечить высокий уровень надежности и других важных качеств реализации. Все это приводит к тому, что разработчик приложения тратит больше времени на системные аспекты разработки, уходит от свой тематики. Иногда у него хорошая идея приложения и хорошие навыки прикладного программиста, но отсутствие навыков системного программирования приведет к низкому качеству результирующего продукта. Цель библиотеки – дать такому разработчику максимально простое и открытое средство для решения этой системной задачи - взаимодействия с датчиками и актуаторами. Успешная реализация проекта позволит прикладному разработчику заниматься своим приложением, а не повторять в N+1 раз реализацию системных функций (иногда весьма посредственную, это ведь не его главная область интересов). Каков должен быть результат: максимально простой в использовании интерфейс для получения данных и управления разнообразными устройствами. Множество поддерживаемых устройств, их протоколов – расширяемо, реализация доступна в исходных текстах, обеспечивается ее максимальная открытость для изучения и расширения пользователем. |
5. RoboWar 2: Revenge of SmartBot Руководитель: Щукин Георгий Анатольевич Аннотация: продолжение проекта Robowar: новая модель, новые правила. Возможно использование Unity 3D/OpenGL/WebGL. Требования: знание C++/C#/Java/Javascript или другого языка программирования, знание OpenGL. |
6. Бинарное инструментирование для анализа производительности программ Руководитель: Калгин Константин Викторович |
7. Параллельные алгоритмы анализа социальных графов Руководитель: Калгин Константин Викторович |
8. Реализация алгоритма Штрассена умножения матриц на ускорителе Intel Xeon Phi Руководитель: Киреев Сергей Евгеньевич Аннотация: Сопроцессор Intel Xeon Phi является перспективным высокопроизводительным вычислителем. Он имеет 61 векторное ядро, каждое из которых способно выполнять по 4 аппаратных потока. Чтобы полностью задействовать вычислительные возможности Xeon Phi необходимо, чтобы программа была распараллелена на большое число потоков и векторизована. При появлении каждого нового вычислителя становится актуальной задача создания библиотек численных подпрограмм, которые используют весь его потенциал производительности. Для Xeon Phi уже существует большое число библиотек, в том числе библиотека базовых операций линейной алгебры, включающая операцию умножения матриц. Стандартный алгоритм умножения матриц умножает две матрицы размером N×N за время O(N^3). Однако существует Алгоритм Штрассена, который позволяет сократить это время до O(N^2.81) за счёт уменьшения количества операций умножения. В проекте предлагается реализовать алгоритм Штрассена на Xeon Phi, достигнуть на нём как можно большей производительности, по возможности обогнав существующую библиотечную подпрограмму умножения матриц. |