сложный случай обработки данных по столбцам
А вот компиляторы от Hewlett-Packard оптимизируют этот цикл так (хвост цикла для упрощения понимания не показан):
for(i=0; i<n; i+=4)
{
for (j=0; j<n; j++)
{
for (k=0; k<n; k++)
{
a[j][i] = a[j][i] + b[k][i] * c[j][k];
a[j][i+1] = a[j][i+1] + b[k][i+1] * c[j][k];
a[j][i+2] = a[j][i+2] + b[k][i+2] * c[j][k];
a[j][i+3] = a[j][i+3] + b[k][i+3] * c[j][k];
}
}
}