Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
52 / 52 / 26
Регистрация: 13.11.2013
Сообщений: 219
Записей в блоге: 1
1

Многократное ускорение кода[литература]

17.04.2017, 16:31. Показов 1083. Ответов 1
Метки нет (Все метки)

Здравствуйте, я дилетант в ЯП C++ перешёл на него после достаточно долгого изучения C# с целью выигрыша в производительности, поэтому я переписал свой проект по визуализации трёхмерной графики именно на него(SDL2). Но увы производительность стала немного ниже.
Две самые частые операции: Умножение точки на матрицу и умножение матриц.Естественно речь идёт про матрицы 4x4.
Вопросы:
1) Как лучше всего хранить матрицу 4x4 ? (На данный момент я это делаю с помощью шестнадцати переменных (double _00,_01,_02...)
2) Как их быстрее всего перемножать ?
3)Как быстрее всего умножать точку(вершину) на матрицу
4)Хочу услышать общие рекомендации по ускорению кода (Возможно, всё надо переписывать под SSE или ещё сложнее под asm вставки ??? но не хочется бросаться в такие крайности)
Ах да в c# я использовал встроенные для этого классы(Matrix3D, Point3D,...) Но теперь же хочу всё реализовать сам.
Пока что я знаю так это то что можно передавать аргументы по ссылки с квантификатором const
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2017, 16:31
Ответы с готовыми решениями:

Ускорение кода
Как ускорить код: #include <iostream> using namespace std; int main(){ int n, q, c =...

Ускорение кода
Ребят помогите ускорить код. Создаётся вектор на 100000001. Далее приходит n пар - начало и конец....

Ускорение кода
Всем привет у меня возник вопрос, как ускорить выполнение кода и я бы хотел изложить своим мысли по...

Многократное использование своего кода
Всем привет! Подскажите, кто знает, как без лишнего геморроя использовать свой собственный код...

1
1715 / 606 / 187
Регистрация: 12.03.2016
Сообщений: 2,191
17.04.2017, 20:16 2
Цитата Сообщение от pavelDev Посмотреть сообщение
Возможно, всё надо переписывать под SSE или ещё сложнее под asm вставки ???
Не надо, для этого существуют функции SIMD работающие в скалярном или параллельном режимах как под SSE, так и под AVX.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2017, 20:16

Паттерны? Многократное использование кода
У меня есть класс для работы с базами данных. В классе есть методы, которые отправляют разные...

Скорость, касательное ускорение, полное ускорение, нормальное ускорение и радиус кривизны траектории
Движение точки задано координатным способом. Найти траекторию и начертить ее. Кроме того определить...

Литература о реализации собственного интерпретатора байт кода
Требуется качественная (рус/англ/хинди) литература о реализации собственного интерпретатора байт...

Directx 11: недоступны функции Ускорение DirectDraw, Direct3D, Ускорение текстур AGP
Здравствуйте. Вся проблема как я понял в том, что у меня не правильно работает Directx. Я никак не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.