Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Оптимизация доступа к памяти - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Counting sort http://www.cyberforum.ru/cpp-beginners/thread1665931.html
объясните пож что это означает. где индекс а где элемент
C++ Запишите рекуррентное уравнение для времени работы этой рекурсивной версии алгоритма сортировки вставкой Как записать рекуррентное уравнение для времени работы . Сортировку вставкой можно представить в виде рекурсивной последовательности следующим образом. Чтобы отсортировать массив A,сначала нужно... http://www.cyberforum.ru/cpp-beginners/thread1665919.html
C++ Вычислить сумму целых частей элементов массива расположенных после последнего отрицательного элемента
Pomogite Pojaluista Вычислить сумму целых частей элементов массива, расположенных после последнего отрицательного элемента
C++ До ввода программа корректно читает данные, после - потоки выдают кракозябр
#include <iostream> #include <conio.h> #include <windows.h> #include <stdio.h> #include<string> #include<fstream> using namespace std; char *del_char(char* s, char c)
C++ Реализовать функцию, удаляющую в строке лидирующие и концевые пробелы http://www.cyberforum.ru/cpp-beginners/thread1665845.html
Удаляет в строке лидирующие и концевые пробелы. Возвращает указатель на преобразованную строку. Пишу впервые на С++ #include "stdafx.h" #include <iostream> void tr(char *s){ int i = 0, j = 0,...
C++ Найти в слове две одинаковые буквы В слове имеются только две одинаковые буквы. Найти их.(помогите пожалуйста) подробнее

Показать сообщение отдельно
maxm
61 / 33 / 8
Регистрация: 17.07.2014
Сообщений: 441

Оптимизация доступа к памяти - C++

19.02.2016, 10:13. Просмотров 438. Ответов 17
Метки (Все метки)

Интересует вопрос. При умножении матриц даст ли результат такая замена или компилятор видит что в цыкле адрес ячейки тот же и сам оптимизирует? И какой компилятор так сделает а какой нет?

C++
1
2
3
4
5
6
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
for (int k = 0; k < n; ++k)
{
x[i][j] = a[i][k] + b[k][j];
}
на

C++
1
2
3
4
5
6
7
8
9
10
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
{
int f = 0;
for (int k = 0; k < n; ++k)
{
f += a[i][k] + b[k][j];
}
x[i][j] = f;
}
Добавлено через 2 минуты
Речь идет о времени доступа к элементу х
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru