Рассчитай точную стоимость своей работы и получи промокод на скидку 1000 ₽
Найди эксперта для помощи в учебе
Найти эксперта
+2
Пример заказа на Автор24
Студенческая работа на тему:
(C/C++) Умножение матриц с применением векторных расширений AVX
Создан заказ №2126240
30 мая 2017

(C/C++) Умножение матриц с применением векторных расширений AVX

Как заказчик описал требования к работе:
Диплом по большей части нужен как отписка, чтобы получить тройку. Есть пример дипломной работы по другой теме. Знаю, что сроки небольшие, готов содействовать. Небольшая часть материалов есть (программа, статьи на которые можно опираться). Полная тема — "Умножение матриц с применением векторных рас ширений современных процессоров семейства x86". Примерно нужно сделать следующее — сравнить различные методы умножения матриц (в общем накидать теории, графиков для объёма). Реализация — программа, сравнивающая SSE, AVX и тривиальный алгоритм умножения. Исходник программы есть, думаю, можно будет им воспользоваться, но скорее всего потребуется поправка на матрицы больших размерностей (это уточню сегодня-завтра, на данный момент программа работает с матрицами размера 4 на 4). Научный руководитель так же подсказал некоторые материалы, которыми можно будет воспользоваться для наполнения, в частности его статьи
подробнее
Фрагмент выполненной работы:
ВВЕДЕНИЕ Актуальность. Начиная с середины 20 века, программирование проделало большой путь и постоянно продолжает развиваться. В наши времена программирование в машинных кодах практически стало историей, а разработка программ на ассемблере имеет смысл в весьма ограниченном числе случаев. Одна из причин этого – невероятно возросший интеллект компиляторов языков высокого уровня таких как C, C++, Fortran, ориентированных на высокопроизводительные вычисления (high performance computing, HPC). (работа была выполнена специалистами author24.ru) Ни на миг, не отвлекаясь от главной задачи – генерации корректного кода, оптимизирующие компиляторы умудряются выполнять многочисленные эквивалентные (точно или с точностью до разрешенных отклонений, например, при изменении порядка операций с плавающей запятой) преобразования, изменяя код до неузнаваемости и обеспечивая производительность, часто сопоставимую с хорошей программой на ассемблере. Важный момент применения кода состоит в использовании новых команд и наборов команд, добавленных в процессор его производителем. Таким образом, любое расширение набора команд является важным событием, не остается незамеченным в индустрии и быстро "подхватывается" разработчиками компиляторов. В данной дипломной работе рассматривается умножение матриц с применением векторных расширений. Что такое векторные расширения? Это дополнение в набор команд процессора, содержащее специализированные типы данных, регистры и инструкции, ориентированные на использование парадигмы SIMD – Single Instruction Multiple Data. Суть парадигмы SIMD заключается в выполнении одной командой однотипных операций над пакетом данных. При этом реализуется один из видов параллельной обработки данных, что открывает возможность существенного повышения производительности вычислительных программ. Матрицы и матричные операции широко используются при математическом моделировании самых разнообразных процессов, явлений и систем. Матричные вычисления составляют основу многих научных и инженерных расчетов – среди областей приложений могут быть указаны вычислительная математика, физика, экономика и др.  С учетом значимости эффективного выполнения матричных расчетов многие стандартные библиотеки программ содержат процедуры для различных матричных операций. Объем программного обеспечения для обработки матриц постоянно увеличивается – разрабатываются новые экономные структуры хранения для матриц специального типа (треугольных, ленточных, разреженных и т.п.), создаются различные высокоэффективные машинно-зависимые реализации алгоритмов, проводятся теоретические исследования для поиска более быстрых методов матричных вычислений.  Являясь вычислительно-трудоемкими, матричные вычисления представляют собой классическую область применения параллельных вычислений. С одной стороны, использование высокопроизводительных многопроцессорных систем позволяет существенно повысить сложность решаемых задач. С другой стороны, в силу своей достаточно простой формулировки матричные операции предоставляют прекрасную возможность для демонстрации многих приемов и методов параллельного программирования. Данное противоречие и обусловило актуальность темы исследования. Целью дипломной работы является систематизация теоретических знаний относительно заявленной темы и сравнение алгоритмов умножения матриц на базе SSE и AVX; Объект: умножение матриц; Предмет: умножение матриц с применением векторных разрешений современных процессоров семейства x86; Задачи: 1.Рассмотреть алгоритмы умножения матриц; 2.Изучить эффективность алгоритмов умножения матриц; 3.Рассмотреть основные понятия векторных расширений; 4.Показать разновидности современных процессоров семейства x86; 5. Изучить режимы архитектуры х86;6.Провести сравнение умножения матриц с применением векторных расширенийПосмотреть предложения по расчету стоимости
Зарегистрируйся, чтобы получить больше информации по этой работе
Заказчик
заплатил
3000 ₽
Заказчик оплатил в рассрочку
Гарантия сервиса
Автор24
20 дней
Заказчик принял работу без использования гарантии
6 июня 2017
Заказ завершен, заказчик получил финальный файл с работой
5
Заказ выполнил
anatoliy17
5
скачать
(C/C++) Умножение матриц с применением векторных расширений AVX.docx
2021-02-18 12:07
Последний отзыв студента о бирже Автор24
Общая оценка
4.1
Положительно
Это просто максимально топовый человечек! Который способен перевернуть мир! Каждый студент которого я знаю, гарантировано будут ссылатся на этого автора! Это ультра опытный человек!

Хочешь такую же работу?

Оставляя свои контактные данные и нажимая «Создать задание», я соглашаюсь пройти процедуру регистрации на Платформе, принимаю условия Пользовательского соглашения и Политики конфиденциальности в целях заключения соглашения.
Хочешь написать работу самостоятельно?
Используй нейросеть
Мы создали собственный искусственный интеллект,
чтобы помочь тебе с учебой за пару минут 👇
Использовать нейросеть
Тебя также могут заинтересовать
Доработать лабораторную работу на Java swing.
Лабораторная работа
Программирование
Стоимость:
300 ₽
Проектирование программного обеспечения для рекламного бизнеса
Курсовая работа
Программирование
Стоимость:
700 ₽
лабораторная по дисциплине "человека-машинное взаимодействие" ЯЗЫК ЛЮБОЙ!!!
Контрольная работа
Программирование
Стоимость:
300 ₽
Нужно решить лабораторную работу по Дифференциальным уравнениям по...
Лабораторная работа
Программирование
Стоимость:
300 ₽
Приложение для кафе на c++ (Microsoft Visual Studio)
Курсовая работа
Программирование
Стоимость:
700 ₽
только текстовую часть курсовой задание сделано
Курсовая работа
Программирование
Стоимость:
700 ₽
Семинары 3шт., на базе семинаров Курсовая!!!! СРОЧНО!!!
Курсовая работа
Программирование
Стоимость:
700 ₽
Работа с классами, структурами
Лабораторная работа
Программирование
Стоимость:
300 ₽
Составить программу вычисления следующих функций:
Решение задач
Программирование
Стоимость:
150 ₽
отчет по практике практику проходим в регионально
Отчёт по практике
Программирование
Стоимость:
700 ₽
Аутентификация и авторизация в NET
Курсовая работа
Программирование
Стоимость:
700 ₽
СИСТЕМА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ ПО ТОРГАМ НА ФОНДОВОЙ БИРЖЕ
Дипломная работа
Программирование
Стоимость:
4000 ₽
Исследование рекуррентных нейронных сетей для анализа сетевого трафика
Дипломная работа
Программирование
Стоимость:
4000 ₽
Разработка мобильного шагающего робота-разведчика
Дипломная работа
Программирование
Стоимость:
4000 ₽
Разработка прототипа программного обеспечения
Дипломная работа
Программирование
Стоимость:
4000 ₽
Анализ изображений на основе теории СЗ
Дипломная работа
Программирование
Стоимость:
4000 ₽
автоматизация расчета фонда оплаты труда
Дипломная работа
Программирование
Стоимость:
4000 ₽
Читай полезные статьи в нашем
Алгоритмизация. Понятие алгоритма. Свойства и способы описания алгоритмов.
Решение задач с использованием компьютера основано на понятии алгоритма, который является точным описанием вычислительного процесса, ведущего от варьируемых начальных данных к конечному результату.
Алгоритмы заложены в основе каждой программы, а также они встречаются во многих сферах деятельности человека (например, рецепты, схема вязания или танца).
Процесс разработки алгоритма - достаточно сложны...
подробнее
Циклы в Turbo Pfscal V.7.0
В среде программирования Turbo Pascal используют 3 вида циклических операторов:
Для цикла с предусловием характерна проверка условия перед выполнением цикла. Если условие носит истинный характер, то будет выполняться продолжение цикла, иначе - цикл завершится.
Синтаксис оператора:
while < логическое_выражение > do < оператор >;
где < оператор > представляет собой оператор, который может быть простым ...
подробнее
Оформление стилей веб-страниц
Стилистическое оформление всех страниц Web-сайта является одним из важных условий создания хорошего сайта. Казалось бы, что сделать это достаточно просто, стоит только установить одинаковые значения для всех визуальных свойств объектов. Но, если Web-страницы, входящие в проект, имеют достаточно большой объем, этот процесс может отнять много времени. Для автоматизации данного процесса можно использ...
подробнее
Динамический HTML
Одним из методов реализации идеи динамичности стало дополнение разработчиками языка HTML и встраивание в браузеры средств обработки специальных языков программирования (JavaScript, JScript и VBScript). Сами сценарии (скрипты), т. е. программы, созданные с помощью этих языков, размещаются совместно с основным содержанием и разметкой HTML-документа. Исходные тексты подобных программ перемещаются в с...
подробнее
Алгоритмизация. Понятие алгоритма. Свойства и способы описания алгоритмов.
Решение задач с использованием компьютера основано на понятии алгоритма, который является точным описанием вычислительного процесса, ведущего от варьируемых начальных данных к конечному результату.
Алгоритмы заложены в основе каждой программы, а также они встречаются во многих сферах деятельности человека (например, рецепты, схема вязания или танца).
Процесс разработки алгоритма - достаточно сложны...
подробнее
Циклы в Turbo Pfscal V.7.0
В среде программирования Turbo Pascal используют 3 вида циклических операторов:
Для цикла с предусловием характерна проверка условия перед выполнением цикла. Если условие носит истинный характер, то будет выполняться продолжение цикла, иначе - цикл завершится.
Синтаксис оператора:
while < логическое_выражение > do < оператор >;
где < оператор > представляет собой оператор, который может быть простым ...
подробнее
Оформление стилей веб-страниц
Стилистическое оформление всех страниц Web-сайта является одним из важных условий создания хорошего сайта. Казалось бы, что сделать это достаточно просто, стоит только установить одинаковые значения для всех визуальных свойств объектов. Но, если Web-страницы, входящие в проект, имеют достаточно большой объем, этот процесс может отнять много времени. Для автоматизации данного процесса можно использ...
подробнее
Динамический HTML
Одним из методов реализации идеи динамичности стало дополнение разработчиками языка HTML и встраивание в браузеры средств обработки специальных языков программирования (JavaScript, JScript и VBScript). Сами сценарии (скрипты), т. е. программы, созданные с помощью этих языков, размещаются совместно с основным содержанием и разметкой HTML-документа. Исходные тексты подобных программ перемещаются в с...
подробнее
Теперь вам доступен полный отрывок из работы
Также на e-mail вы получите информацию о подробном расчете стоимости аналогичной работы