Ich vektorisieren einen Teil meines Programms, aber es gibt Segmentation fault
Fehler zurück. Was ist daran falsch? Hier ist es der vereinfachte Abschnitt, der das Problem verursacht. j++
und i++
ist genau das, was ich will, ich will nicht j += 16
sein.Warum gibt dieser Codeabschnitt den Fehler "Segmentierungsfehler" zurück?
unsigned short int input[256][256] __attribute__((aligned(32)));//global
for (i = 0; i < 256 - 16; i++) {
for (j = 0; j < 256 - 16; j++) {
temp_v2 =_mm256_load_si256((__m256i *)&input[i][j]);
}
}
nicht proprietäre Erweiterung Verwenden Sie, wenn ein Standard-Feature zur Verfügung steht. C liefert den Spezifizierer '_Alignas'. – Olaf
Ihr Code verstößt gegen striktes Aliasing –
In gcc verwende ich '__attribut __ ((aligned (X))) ', habe so ein Problem noch nicht gesehen. Was kann ich für striktes Aliasing tun? – ADMS