Вопросы по теме 'cpu-cache'
Как вы профилируете приложение .net с учетом влияния кеша ЦП?
Все известные мне профилировщики .net не учитывают влияние кеша процессора.
Учитывая, что чтение поля из кеша ЦП может быть в 100 раз быстрее, чем чтение из основной памяти, это может быть важным фактором. (Мне просто нужно было объяснить это в...
136 просмотров
schedule
01.05.2024
Проблемы с чтением общего буфера mmap
У меня есть модуль ядра, который выделяет большой буфер памяти, затем этот буфер перенаправляется с помощью mmap в пользовательское пространство. Модуль получает некоторые данные от оборудования, а затем помещает новые данные в буфер с флагом перед...
611 просмотров
schedule
29.04.2024
Как синхронизируется кеш инструкций x86?
Мне нравятся примеры, поэтому я написал немного самомодифицирующегося кода на c ...
#include <stdio.h>
#include <sys/mman.h> // linux
int main(void) {
unsigned char *c = mmap(NULL, 7, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|...
6150 просмотров
schedule
14.04.2024
Оптимизация преобразования цветов Cortex-A8 с использованием NEON
В настоящее время я выполняю процедуру преобразования цвета, чтобы преобразовать YUY2 в NV12. У меня есть функция, которая работает довольно быстро, но не так быстро, как я ожидал, в основном из-за промахов кеша.
void convert_hd(uint8_t *orig,...
426 просмотров
schedule
21.12.2023
Установить ассоциативный кеш: рассчитать размер тега?
Я изо всех сил пытаюсь решить этот вопрос, я осмотрелся, но все похожие вопросы более сложны, чем мои, с использованием журналов они более продвинуты, чем мы делали в нашем классе. Вот вопрос:
Предположим, у вас есть 4-сторонний ассоциативный...
34198 просмотров
schedule
03.12.2023
Показатели ЦП (промахи/попадания кэша), которые не имеют смысла
Я использую Intel PCM для детальных измерений ЦП. В своем коде я пытаюсь измерить эффективность кеша.
По сути, я сначала помещаю небольшой массив в кеш L1 (обходя его много раз), затем запускаю таймер, еще раз просматриваю массив (который,...
1312 просмотров
schedule
10.05.2024
Самое быстрое использование набора данных размером чуть более 64 байт?
Структура: у меня есть 8 64-битных целых чисел (512 бит = 64 байта, предполагаемая ширина строки кэша), которые я хотел бы сравнить с другим, одним 64-битным целым числом, в свою очередь, без кэш-промахов . Набор данных, к сожалению, абсолютно...
70 просмотров
schedule
07.11.2023
Каковы преимущества/использование памяти типа Device или Strongly-ordered?
Мой вопрос касается различных типов памяти, доступных на чипе M-4, о котором я сейчас читаю. Подводя итог, можно сказать, что существует три разных типа памяти, то есть «нормальная», «устройство» и «строго упорядоченная», которые определяют...
680 просмотров
schedule
11.01.2024
Префикс кода операции блокировки бесполезен из-за механизма согласованности кеша?
В руководстве Intel говорится:
8.1.4 Влияние операции LOCK на внутренние кэши процессора ... Механизм согласованности кэша автоматически предотвращает одновременное изменение данных в этой области двумя или более процессорами, которые...
148 просмотров
schedule
05.11.2022
Понимание std :: hardware_destructive_interference_size и std :: hardware_constructive_interference_size
В C ++ 17 добавлены std::hardware_destructive_interference_size и std::hardware_constructive_interference_size . Во-первых, я подумал, что это просто переносимый способ получить размер строки кэша L1, но это чрезмерное упрощение.
Вопросы:...
7474 просмотров
schedule
11.04.2024
При доступе к памяти будет ли установлен бит доступа к таблице страниц / грязный бит в случае попадания в кеш?
Насколько мне известно, доступ к памяти ЦП включает кеш ЦП и MMU. ЦП попытается найти свою цель в кеше, и если произойдет промах в кеше, ЦП переключится на MMU. Во время доступа через MMU бит доступа / загрязнения соответствующей записи таблицы...
2710 просмотров
schedule
04.11.2023
Использует ли обновление записи TLB кеш данных?
В архитектуре ЦП ARM мы знаем, что если кеш TLB пропускает, ЦП будет искать таблицу страниц, чтобы вычислить физический адрес требуемого виртуального адреса. Мой вопрос в том, что если таблица страниц кэшируется в области кэша данных, использует ли...
176 просмотров
schedule
20.02.2024
В какой уровень кеша загружается PREFETCHT2?
В документации для PREFETCHT2 , для которого выполняется предварительная выборка с подсказкой T2, говорится (выделено мной):
T0 (временные данные) - предварительная загрузка данных на все уровни иерархии кеша.
T1 (временные данные...
192 просмотров
schedule
15.09.2022
Как буфер хранения и буфер заполнения строк взаимодействуют друг с другом?
Я читал статью об атаках MDS RIDL: Rogue In-Flight Data Load . Они обсуждают, как Line Fill Buffer может вызвать утечку данных. Есть Об уязвимостях RIDL и воспроизведении нагрузок вопрос, в котором обсуждаются детали микроархитектуры эксплойта....
1292 просмотров
schedule
04.01.2024
Почему ассоциативность набора кэша в современных процессорах 8-позиционная ассоциативность набора?
Есть ли какое-то особое преимущество с 8-позиционной ассоциативностью кеша, которое я не вижу? (Также заранее извиняюсь, если это глупый вопрос.)
367 просмотров
schedule
09.06.2024
Можно ли изменить размер строки кэша ЦП? и как передаются данные в блоках кеша?
У меня есть два вопроса, связанных с оборудованием:
1. Изменяется ли размер строки кэша ЦП операционной системой или он жестко встроен в ЦП? размеры строк кэша можно увидеть с помощью getconf -a в Linux.
2- Предположим, что размер строки моего...
58 просмотров
schedule
28.03.2024
Как работает Load Store Queue при наличии MSHR?
Я понимаю базовую работу очереди загрузки-хранилища, которая
когда загрузки вычисляют свой адрес, они проверяют очередь хранилища на наличие любых предыдущих хранилищ по тому же адресу, и если таковая имеется, они получают данные из самого...
108 просмотров
schedule
31.10.2023