[an error occurred while processing this directive]
|
вот 4 тестовых функции: } for(i=0;i } void test3(int *ptn,int N,int* asd) } }
E-mail:
info@telesys.ru
oid test1(int *ptn,int N,int* asd)
{
int i;
for(i=0;i
*ptn++ = *asd++;
}
void test2(int *restrict ptn,int N,int * restrict asd)
{
int i;
*ptn++ = *asd++;
}
{
int i;
#pragma MUST_ITERATE (100);
for(i=0;i
*ptn++ = *asd++;
}
void test4(int *restrict ptn,int N,int *restrict asd)
{
int i;
#pragma MUST_ITERATE (100);
for(i=0;i
*ptn++ = *asd++;
}
в результате оказалось, что restrict существенно повышает производительность(~ в 1.4 раза), а вот применение MUST_ITERATE ни дает ничего, может некоректный тест?
Ответы