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

Динамические массивы и кэш процессора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сформировать матрицу с помощью генератора случайных чисел и организовать ее вывод http://www.cyberforum.ru/cpp-beginners/thread1108757.html
Составить программу для подсчета произведения нечетных элементов двумерной матрицы В размерности m × n. Сформировать матрицу с помощью генератора случайных чисел и организовать ее вывод.
C++ Пиксель экрана а можно написать код, который смог бы сделать так, чтобы определенный пиксель экрана был, скажем, зеленого цвета? идеи сделать его битым не принимаются :) http://www.cyberforum.ru/cpp-beginners/thread1108756.html
Сортировка массива C++
Расставить строки массива в порядке убывания сумм их элементов. Я беру двумерный массив, потом записываю в отдельный одномерный массив суммы элементов строк. Элемент получившегося массива - есть сумма строки исходного, а индексы равны между собой. Дальше ищу максимальный элемент в одномерном, сохраняю его и индекс, в исходном в цикле сравниваю циклическую переменную с индексом и в зависимости...
Изменение приоритета математических операций C++
Здравствуйте, по заданию в лабораторной, нужно написать программу которая будет вычислять значение математического выражения с заданным приоритетом операций(приоритет каждой операции задаётся пользователем), у меня возник такой вопрос можно ли изменить приоритет системно, чтобы выражение можно было задать как функцию? (а не как я сделал когда выражение хранится в массиве и его значение вычисляет...
C++ Используя метод вычетов, сгенерировать последовательность из 1000 псевдослучайных чисел http://www.cyberforum.ru/cpp-beginners/thread1108735.html
Вообщем есть задание. 1. Используя метод вычетов, сгенерировать последовательность из 1000 псевдослучайных чисел, результат вывести на экран. 1.1. Оценить математическое ожидание полученной последовательности, математическое ожидание и выборочное среднее вывести на экран. 1.2. Оценить дисперсию полученной последовательности, дисперсию и выборочную дисперсию вывести на экран. 1.3....
C++ Вычисление по формуле Вычислить значение формулы, вот код: #include <iostream> #include <Windows.h> #include <math.h> using namespace std; void main() { подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16936 / 5341 / 328
Регистрация: 30.03.2009
Сообщений: 14,357
Записей в блоге: 26
02.03.2014, 14:52     Динамические массивы и кэш процессора
Согласен с тем, что это ересь, но, тем не менее, ТС что-то пытается экспериментировать, а потому полезно бы почитать ссылку: Замеры скорости работы malloc'а на Windows и Linux

Вкратце смысл такой, что malloc/realloc выделяет динамическую память, не обращаясь при этом к физической памяти. Т.е. если ты обращаешься к самому первому и к самому последнему элементу массива, то реально подкачается в память только две страницы в памяти. А в кэш попадёт всего 2 строки кэша (cache line). Хз какой размер строки на интеле, но оно измеряется величинами типа 256 байт. Т.е. если ты хочешь, чтобы данные были в кэше, нужно залить данными весь массив с интервалом не больше, чем размер строки кэша, потом это дело прочитать и при этом хоть как-то проверить, что в процессе всего этого не произойдёт переключение задач и уход в ОС. В противном случае твоя программа будет измерять неизвестно что
 
Текущее время: 19:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru