- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all,
when I invoke the function ippsCrossCorr_64f() (cross correlation) with special arguments, it might crash:
ippsCrossCorr_64f(x, 2593, y, 64000, corrIpp, 16001, 32560);
It seems to me, that the amount of memory allocated on the heap before calling this function has an influence on whether it is crashing or not.
In order for you to reproduce the crash find below a minimal demo program as source code and as binary.
I use IPP version 6.1.6, which was statically linked, have a Pentium 4 3.2GHz and use Windows XP 32 bit.
Any idea what causes the crash, e.g. wrong parameters, bug in the function etc.?
Thank you
---------------------------------------------------------------------------------
#include
#include
#include
#include
// Constants
const int MAX_SIGNAL_LEN = 200000;
const int X_LEN = 66468;
const int Y_LEN = 68868;
double *myMalloc(int length)
{
// return (double*)malloc(length*sizeof(double));
// return (double*)ippsMalloc_8u(length*sizeof(double));
return ippsMalloc_64f(length);
}
void myFree(double *x)
{
// free(x);
ippsFree(x);
}
int main()
{
ippStaticInit();
double *corrIpp = (double*)myMalloc(MAX_SIGNAL_LEN);
memset(corrIpp, 0, MAX_SIGNAL_LEN*sizeof(double));
double *x = (double*)myMalloc(X_LEN);
memset(x, 0, (X_LEN)*sizeof(double));
double *y = (double*)myMalloc(Y_LEN);
memset(y, 0, Y_LEN*sizeof(double));
ippsCrossCorr_64f(x, 2593, y, 64000, corrIpp, 16001, 32560);
myFree(x);
myFree(y);
myFree(corrIpp);
return 0;
}
when I invoke the function ippsCrossCorr_64f() (cross correlation) with special arguments, it might crash:
ippsCrossCorr_64f(x, 2593, y, 64000, corrIpp, 16001, 32560);
It seems to me, that the amount of memory allocated on the heap before calling this function has an influence on whether it is crashing or not.
In order for you to reproduce the crash find below a minimal demo program as source code and as binary.
I use IPP version 6.1.6, which was statically linked, have a Pentium 4 3.2GHz and use Windows XP 32 bit.
Any idea what causes the crash, e.g. wrong parameters, bug in the function etc.?
Thank you
---------------------------------------------------------------------------------
#include
#include
#include
#include
// Constants
const int MAX_SIGNAL_LEN = 200000;
const int X_LEN = 66468;
const int Y_LEN = 68868;
double *myMalloc(int length)
{
// return (double*)malloc(length*sizeof(double));
// return (double*)ippsMalloc_8u(length*sizeof(double));
return ippsMalloc_64f(length);
}
void myFree(double *x)
{
// free(x);
ippsFree(x);
}
int main()
{
ippStaticInit();
double *corrIpp = (double*)myMalloc(MAX_SIGNAL_LEN);
memset(corrIpp, 0, MAX_SIGNAL_LEN*sizeof(double));
double *x = (double*)myMalloc(X_LEN);
memset(x, 0, (X_LEN)*sizeof(double));
double *y = (double*)myMalloc(Y_LEN);
memset(y, 0, Y_LEN*sizeof(double));
ippsCrossCorr_64f(x, 2593, y, 64000, corrIpp, 16001, 32560);
myFree(x);
myFree(y);
myFree(corrIpp);
return 0;
}
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I run the code and reproduced the problem. I escalated it to the function owner for future fix
Thanks,
Chao

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page