Презентации, доклады, проекты по информатике

Введение в теорию трансляторов (практика 3)
Введение в теорию трансляторов (практика 3)
Loop-invariant code motion Компиляторная оптимизация, выносящая вычисления, инвариантные к итерациям цикла, за рамки цикла Часто используемая аббревиатура - LICM LICM Задание Построить LLVM + clang на Linux Скомпилировать каждый из файлов licm_5.cpp, licm_10.cpp, licm_20.cpp, licm_div_5.cpp, licm_div_10.cpp, licm_div_20.cpp с помощью clang в двух версиях: -О0 (то есть без оптимизаций) -О1 (то есть с оптимизациями, включающими в себя LICM) Изучить ассемблер и LLVM-IR код скомпилированных программ в предыдущих случаях, отметить существенные отличия и объяснить их Руками в коде LLVM отключить LICM-проход компилятора (редактировать не больше нескольких строк кода) и пересобрать LLVM + clang Снова компилировать файлы из шага 2 с -O1, получая третьи версии файлов. Изучить ассемблер и LLVM-IR код, объяснить отличия от первых двух версий. Для всех трех версий всех скомпилированных программ сделать измерения времени выполнения согласно инструкциям: https://llvm.org/docs/Benchmarking.html. Требуются все метрики, выдаваемыми при выполнении команды perf stat (исполненой через cset shield) Объяснить различия в метриках и наблюдаемые эффекты. Учитывать аппаратную специфику. Полезный ресурс - https://www.agner.org/optimize/instruction_tables.pdf
Продолжить чтение
Периферийные устройства ПК
Периферийные устройства ПК
Что такое периферийные устройства Большинство окружающих нас компьютеров построены по классической схеме Фон-Неймановской машины образца 1945 года. По этой схеме компьютер состоит из центрального процессора (ЦП, CPU), памяти и устройств ввода-вывода. Процессор исполняет программы, находящиеся в памяти; память предназначена для хранения программ и данных, доступных процессору; устройства ввода-вывода (УВВ) предназначены для связи с внешним миром. Время внесло небольшие коррективы в названия этих «трех китов», и сейчас то, что попадало под название УВВ, называют периферийными устройствами. Процессор (один или несколько), память и необходимые элементы, связывающие их между собой и другими устройствами, называют центральной частью компьютера. Периферийные устройства (ПУ)  — это все программно-доступные элементы компьютера, не попавшие в его центральную часть. Классификация ПУ     Устройства хранения данных (устройства внешней памяти)  — дисковые (магнитные, оптические, магнитооптические), ленточные (стримеры), твердотельные (карты, модули и устройства USB на флэш-памяти). Эти устройства используются для энергонезависимого сохранения информации из памяти и загрузки этой информации в оперативную память.     Устройства ввода-вывода, служащие для преобразование информации из внутреннего представления в компьютере (биты и байты) в форму, доступную окружающим, и обратно. Сюда относятся дисплеи (устройства отображения, т.е. вывода), клавиатура и мышь (устройства ввода), принтеры и сканеры, плоттеры и дигитайзеры, джойстики, акустические системы и микрофоны, телевизоры и видеокамеры, устройства телеуправления и телеметрии.    Коммуникационные устройства, служащие для передачи информации между компьютерами и (или) их частями. Сюда относятся модемы (проводные, радио, инфракрасные…), адаптеры локальных и глобальных сетей. Здесь преобразования информации нужны только для преодоления каких-то расстояний.
Продолжить чтение