Um carregamento não alocado de SSE inteiro mais rápido que raramente é usado [duplicado]

Esta pergunta já tem uma resposta aqui:

qual é a diferença entre _mm256_lddqu_si256 e _mm256_loadu_si256 1 resposta

Eu gostaria de saber mais sobre o_mm_lddqu_si128intrínseco (lddqu instruções desde SSE3), particularmente em comparação com o_mm_loadu_si128 intrínseco (instrução movdqu desde SSE2).

Eu só descobri_mm_lddqu_si128 hoje. O guia intrínseco da Intel diz

esse intrínseco pode ter um desempenho melhor que _mm_loadu_si128 quando os dados cruzam um limite de linha de cache

eum comentário diz isto

terá um desempenho melhor em determinadas circunstâncias, mas nunca terá um desempenho pior.

Então, por que não é mais usado (o SSE3 é uma barra bastante baixa, já que todos os processadores Core2 o possuem)? Por que ele pode ter um desempenho melhor quando os dados cruzam uma linha de cache? Élddqu possivelmente melhor apenas em um determinado subconjunto de processadores. Por exemplo. antes de Nehalem?

Sei que poderia ler um manual da Intel para provavelmente encontrar a resposta, mas acho que essa pergunta pode ser interessante para outras pessoas.

questionAnswers(1)

yourAnswerToTheQuestion