Bonjour tout le monde,
j'ai une question d'ordre technique que je n'arrive pas a comprendre
mon pplication utilise beaucoup la fonction de copie de block, de la bibliotheque d'intel IPP. comme j'ai remarque des bugs consequents, j'ai fait quelques tests et voila un des plus bizarre:
Code c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 
int main()
{
 
	  IppCpuType cpu=ippGetCpuType();
	  ippStaticInitCpu(cpu);
	  printf("processor type %d \n",cpu );
 
	register int i,j;
	int step1, step2;
	IppiSize size={128,256};
 
	Ipp32f*      data= ippiMalloc_32f_C1(size.width, size.height, &step1);
	Ipp32f*    tofill= ippiMalloc_32f_C1(size.width, size.height, &step1);
 
	for(i=0;i<5;i++)
		{
		for(j=0;j<5;j++)
			{
				data[(i)*size.width+(j)]=7*i+3*j;
				printf("%f ",data[(i)*size.width+(j)] );
			}
		printf("\n");
		}
	printf("data ----------\n");
	for(i=0;i<5;i++)
		{
		for(j=0;j<5;j++)
			{
				printf("%f ",data[(i)*size.width+(j)] );
			}
		printf("\n");
		}
	IppiSize s={5,5};
 
	Ipp32f* Roi=ippiMalloc_32f_C1(s.width, s.height, &step2);
	ippiCopy_32f_C1R(data, step1, Roi,step2,s);
 
	printf("Roi ----------\n");
 
	for(i=0;i<5;i++)
		{
		for(j=0;j<5;j++)
			{
			 printf("%f ",Roi[i*5+j] );
			}
		printf("\n");
		}
	printf("%d %d", step1, step2);
	return 0;
}

les resultats affiches sont:
processor type 35
0.000000 3.000000 6.000000 9.000000 12.000000
7.000000 10.000000 13.000000 16.000000 19.000000
14.000000 17.000000 20.000000 23.000000 26.000000
21.000000 24.000000 27.000000 30.000000 33.000000
28.000000 31.000000 34.000000 37.000000 40.000000
data ----------
0.000000 3.000000 6.000000 9.000000 12.000000
7.000000 10.000000 13.000000 16.000000 19.000000
14.000000 17.000000 20.000000 23.000000 26.000000
21.000000 24.000000 27.000000 30.000000 33.000000
28.000000 31.000000 34.000000 37.000000 40.000000
Roi ----------
0.000000 3.000000 6.000000 9.000000 12.000000
0.000000 0.000000 0.000000 7.000000 10.000000
13.000000 16.000000 19.000000 0.000000 0.000000
0.000000 14.000000 17.000000 20.000000 23.000000
26.000000 0.000000 0.000000 0.000000 21.000000
est-ce qu'il un quelqu'un qui a rencontre ce probleme auparavant? ou voyez vous l'erreur que j'aurais pu faire en ecrivant ce test?
Merci d'avance