Как аннулировать строки кеша? [Дубликат]

Попробуйте эти две вещи отдельно и вместе:

  1. удалите if($_POST['submit']){}
  2. remove $from (только моя кишка)
2
задан Seves 12 April 2016 в 03:46
поделиться

1 ответ

предварительно загружать данные в кеш (не загружая его в регистр):

PREFETCHT0 [address]
PREFETCHT1 [address]
PREFETCHT2 [address]

intrinsic: void _mm_prefetch (char const* p, int hint)

См. insn ref manual и другие руководства, для которых означают разные подсказки близости. (Другие ссылки в теге wiki).

Известная статья Что каждый программист должен знать о памяти , была написана, когда P4 был текущим. Текущие процессоры имеют более интеллектуальные аппаратные префетеры, а гиперпоточность полезна гораздо больше, чем просто выполнение потоков предварительной выборки. AFAIK, потоки предварительной выборки - в основном мертвая идея. Кроме этого, отличная статья о кешировании. Найдите другие сообщения SO и прочее, чтобы решить, когда на самом деле делать предварительную выборку.

Do not переусердствовать с предварительной выборкой программного обеспечения на Intel IvyBridge. Эта конкретная микроархитектура имеет ошибку производительности и может удалять только одну предварительную выборку на 43 такта .


Сбросить строку кэша, содержащую заданный адрес:

clflush [address]
clflushopt [address]   ; Newer CPUs only.  Weakly ordered, with higher throughput.

intrinsic: void _mm_clflushopt (void const * p)

Недавно появился вопрос о его производительности .

6
ответ дан Community 22 August 2018 в 16:38
поделиться
  • 1
    ПК. - чем ты занимаешься? Вы работаете в Intel или при серьезной оптимизации HPC? Просто любопытно. Вам нужно рассмотреть вопрос о размещении материала на сайте, например, Agner Fog, возможно, со ссылками на S.O. ответы! – Brett Hale 13 April 2016 в 12:22
  • 2
    @BrettHale: Я фактически безработный банкомат. Это увлечение, которое мне нравится: P (и почему у меня так много времени, чтобы написать ответы SO). Если кто-то хотел бы использовать меня, чтобы оптимизировать дерьмо из вещей, это было бы круто. – Peter Cordes 13 April 2016 в 12:33
  • 3
  • 4
    _mm_clflushopt(), похоже, не поддерживается MSVC 2017 toolset v141. – Serge Rogatch 6 August 2017 в 09:37
  • 5
    @SergeRogatch: Это несчастливо. Предоставляют ли они какие-либо альтернативные имена для функций clflushopt? Документы Intel только _mm_clflushopt – Peter Cordes 6 August 2017 в 09:40
Другие вопросы по тегам:

Похожие вопросы: