Уважаемые коллеги! Приглашаем Вас 27 апреля в 19-00 (ул.Кибальчича, 1, ауд.50) на очередное заседание научно-практического семинара «Финансовые инновации» Докладчик: Александр Талашов, специалист по управлению общебанковскими рисками, «Коммерцбанк Евразия» Тема: «Примение высокопроизводительного программного и программно-аппаратного инструментария для построения бизнес-решений в финансовой отрасли» Место проведения: Финансовый университет при Правительстве РФ, ул.Кибальчича, 1, ауд.201 (2 этаж). В Университете пропускная система, поэтому внешним участникам необходимо заранее прислать о себе сведения (фамилия, имя, отчество, организация) для внесения в список на проходной. Контактный адрес: кафедра «Финансовые рынки и финансовый инжиниринг» Финуниверситета тел. 495 615 96 24 Эл.почта: zb@fa.ru Жизнь полна неожиданностей, поэтому на всякий случай уточните 27.04 по телефону или на кафедральной странице в разделе «Новости и объявления» http://www.fa.ru/chair/cbfi/news/Pages/default.aspx, не произошло ли каких-либо изменений Основные вопросы: Автор не несёт ответственности за… - Зачем придумали компьютеры? · Аналоговый [реальный] мир и мир цифровой [виртуальный]: в чём profit использования цифровых исчислений? - Как работает компьютер? · Немного схемотехники. Аналоговая схемотехника: простейшие элементы цепи и транзисторы; усилители и простейший АЦП. Цифровая схемотехника. Логические элементы [вентили]. · Триггеры. Мультиплексоры. Простейшая операция записи в память, простейшая операция чтения из памяти. · Процессор I8080. Устройство и принцип работы. Немного о прерываниях [программных и аппаратных]. - Низкоуровневые машинные языки программирования и высокоуровневые языки программирования. · В чём разница? · Компилятор. Пример. Стековая машина, регистровая машина. · Очень кратко о формальных языках с точки зрения теории формальных языков. - Операционные системы. · Зачем нужны, какими бывают? Основные свойства\возможности современной ОС. · Многозадачность. · Виртуальные машины. Многопоточность - Асинхронное выполнение программ. Параллелизм в данных, параллелизм выполнения задач. - Зачем придумали многопоточность? · Пример backgroundworker’а. - Чем обеспечивается синхронизация и взаимодействие между потоками процесса? · Примеры использования средств win32 и средств .net. · Ещё раз о виртуальных машинах. Подробнее о cli, о виртуальной машине .net. · Почему разработчику ПО лучше использовать средства .net, в целом? Преимущества .net. · System.Threading, TPL, новый оператор async и т.п.. Примеры. CUDA - Почему Nvidia CUDA? - Простая идея: векторные процессоры. · SISD, MISD, SIMD, MIMD. - Аппаратная модель CUDA – устройства. · Сетка мультипроцессоров. · Устройство мультипроцессоров. · Иерархия памяти. Ещё раз об устройстве мультипроцессоров. Последовательность работы планировщика команд. - Программная модель CUDA · Высокоуровневая библиотека. · Низкоуровневая библиотека – драйвер. · Низкоуровневая виртуальная машина. Уже не CUDA. Зачем нужна и почему она «правит балом»? - Единое представление аппаратной и программной модели · Ядро. Примеры ядер. · Параллелизм данных. Ещё раз о порциях. SIMT, а не SIMD. · Линейная индексация нитей. Специальные переменные внутри высокоуровневого ядра и виртуальные регистры в PTXISA. - Особенности построения CUDA – ядер, в зависимости от версии виртуальной машины и библиотек [computecapability в т.ч.]. Построение высокопроизводительного ядра. · Выравнивание размещения данных в памяти по блоку памяти. · Обеспечение единого обращения нитей к банку памяти. · Использование всех видов памяти – как идеальный вариант. Возможность устранения условных переходов и лишних ветвлений. - Как же перенести некую абстрактную задачу на CUDA – платформу? · Закон Амдаля. Представление программы в виде графов. Зависимости в потоке данных. Оптимизации. · Способ поиска зависимостей в данных в некой Си-подобной программе. Попытка устранения зависимостей в данных, оптимизации и аффиные преобразования. Пример. - Интеграция технологии CUDA в деятельность предприятия · Пример №1. Проба технологии и пример постепенного «мягкого» внедрения технологии в рамках текущих корпоративных решений. · Пример №2. Разработка общего корпоративного решения. Динамический подхват кода клиентской машины и его дальнейшая обработка на стороне размещённого в офисе сервера [или в дэйта-центре, расположенном в другом городе].