Loading...
You are not logged-in Login/Register





  • Posts   Search Threads
  • KazikJuly 7, 2009 12:53 PM PDT   
    Running FFTW Wrapper Library troubles

    Hi,
    I asked my admins to built the FFTW wrapper library according to these instructions:
    http://www.intel.com/software/products/mkl/docs/fftw3xmkl_notes.htm
    It looks like everything has been done (new library files have appeared) but for some reason my programmes having FFTW code have not been compiled (whilst everything was working when using g++).
    I've tried also several Examples (.../intel/Compiler/11.0/081/mkl/examples/fftw3xc) but still the compilation did not succeeded.
    Assuming that we consider example file complex_3d_double_ex1.c the compilation returns:
    ------------------------------------------------------------------------------------
    icpc dfti_example_support.c complex_3d_double_ex1.c -lfftw

    dfti_example_support.c(39): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float* x_in  = x_init;
    ^
    dfti_example_support.c(40): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float* x_exp = res_exp;
    ^
    dfti_example_support.c(68): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_in  = x_init;
    ^
    dfti_example_support.c(69): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_exp = res_exp;
    ^
    dfti_example_support.c(97): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_in = x;
    ^
    dfti_example_support.c(113): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_in = x;
    ^
    dfti_example_support.c(129): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_in = x;
    ^
    dfti_example_support.c(142): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_in = x;
    ^
    dfti_example_support.c(156): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_in = x;
    ^
    dfti_example_support.c(165): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double*  x_in = x;
    ^
    dfti_example_support.c(175): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_in = x;
    ^
    dfti_example_support.c(195): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_2d = x;
    ^
    dfti_example_support.c(228): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_2d = x;
    ^
    dfti_example_support.c(260): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double*  x_in = x;
    ^
    dfti_example_support.c(282): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float* x_in = x;
    ^
    dfti_example_support.c(283): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float* x_exp  = res_exp;
    ^
    dfti_example_support.c(300): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_in = x;
    ^
    dfti_example_support.c(301): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_exp  = res_exp;
    ^
    dfti_example_support.c(317): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_in  = x;
    ^
    dfti_example_support.c(318): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_exp = y;
    ^
    dfti_example_support.c(332): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_in = x;
    ^
    dfti_example_support.c(333): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double*  x_exp = y;
    ^
    dfti_example_support.c(435): error: a value of type "void *" cannot be used to initialize an entity of type "float *"
    float*  x_2d = x;
    ^
    dfti_example_support.c(467): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double*  x_2d = x;
    ^
    dfti_example_support.c(499): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double*  x_2d = x;
    ^
    dfti_example_support.c(865): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_2d = x;
    ^
    dfti_example_support.c(896): error: a value of type "void *" cannot be used to initialize an entity of type "double *"
    double* x_2d = x;
    ^
    compilation aborted for dfti_example_support.c (code 2)
    complex_3d_double_ex1.c(77): warning #181: argument is incompatible with corresponding format string conversion
    printf(" DFTI_LENGTHS        = {%d,%d,%d)           n", m, nn[1], k);
    ^
    complex_3d_double_ex1.c(77): warning #181: argument is incompatible with corresponding format string conversion
    printf(" DFTI_LENGTHS        = {%d,%d,%d)           n", m, nn[1], k);
    ^
    complex_3d_double_ex1.c(105): error: argument of type "fftw_complex (*)[13][15][12]" is incompatible with parameter of type "fftw_complex *"
    Desc_Handle = fftw_plan_dft_3d(nn[0], nn[1], nn[2], &x_in, &x_in, FFTW_FORWARD, FFTW_ESTIMATE);
    ^
    complex_3d_double_ex1.c(105): error: argument of type "fftw_complex (*)[13][15][12]" is incompatible with parameter of type "fftw_complex *"
    Desc_Handle = fftw_plan_dft_3d(nn[0], nn[1], nn[2], &x_in, &x_in, FFTW_FORWARD, FFTW_ESTIMATE);
    ^
    complex_3d_double_ex1.c(122): error: argument of type "fftw_complex (*)[13][15][12]" is incompatible with parameter of type "fftw_complex *"
    Desc_Handle = fftw_plan_dft_3d(nn[0], nn[1], nn[2], &x_in, &x_in, FFTW_BACKWARD, FFTW_ESTIMATE);
    ^
    complex_3d_double_ex1.c(122): error: argument of type "fftw_complex (*)[13][15][12]" is incompatible with parameter of type "fftw_complex *"
    Desc_Handle = fftw_plan_dft_3d(nn[0], nn[1], nn[2], &x_in, &x_in, FFTW_BACKWARD, FFTW_ESTIMATE);
    ^
    compilation aborted for complex_3d_double_ex1.c (code 2)
    ------------------------------------------------------------------------------------
    And by using makefile (.../intel/Compiler/11.0/081/mkl/examples/fftw3xc):
    make libem64t complex_3d_double_ex1
    ------------------------------------------------------------------------------------
    make wrap_lib _IA=em64t
    make[1]: Entering directory `/local/intel/Compiler/11.0/081/mkl/examples/fftw3xc'
    cd "../.."/interfaces/fftw3xc && make libem64t PRECISION=MKL_DOUBLE compiler=intel INSTALL_DIR=/local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib/em64t SPEC_OPT=""
    make[2]: Entering directory `/local/intel/Compiler/11.0/081/mkl/interfaces/fftw3xc'
    make clean libfftw3xc_intel.a _IA=em64t
    make[3]: Entering directory `/local/intel/Compiler/11.0/081/mkl/interfaces/fftw3xc'
    rm -rf /local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib/em64t/obj
    rm -f /local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib/em64t/libfftw3xc_intel.a
    mkdir -p /local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib/em64t/obj
    mkdir: cannot create directory `/local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib': Read-only file system
    make[3]: *** [libfftw3xc_intel.a] Error 1
    make[3]: Leaving directory `/local/intel/Compiler/11.0/081/mkl/interfaces/fftw3xc'
    make[2]: *** [libem64t] Error 2
    make[2]: Leaving directory `/local/intel/Compiler/11.0/081/mkl/interfaces/fftw3xc'
    make[1]: *** [wrap_lib] Error 2
    make[1]: Leaving directory `/local/intel/Compiler/11.0/081/mkl/examples/fftw3xc'
    make: *** [libem64t] Error 2
    ------------------------------------------------------------------------------------

    I will be very grateful for any help.
    Thank you in advance.
    --
    Kind regards,
    Kazik

    KazikJuly 8, 2009 4:06 AM PDT
    Rate
     
    Re: Running FFTW Wrapper Library troubles

    Can anybody help? Please.
    --
    Best,
    Kazik


    Ying H (Intel)July 14, 2009 5:40 AM PDT
    Rate
     
    Re: Running FFTW Wrapper Library troubles

    Quoting - Kazik
    Can anybody help? Please.
    --
    Best,
    Kazik

    Hello Kazik,

    When you enter the comand :
    make libem64t complex_3d_double_ex1, 
    It will rebuild libfftw3xc_intel.a to current directory.
    But from the error message : mkdir: cannot create directory `/local/intel/Compiler/11.0/081/mkl/examples/fftw3xc/lib': Read-only file system ,
    looks you haven't write right with the directory?  Could you please check it and add write if possible?

    Regarding icpc problem, icpc is supposed for c++ file. Since dfti_example_support.c complex_3d_double_ex1.c are c language, you may use icc to build them for example.

    icc  -I/opt/intel/Compiler/11.0/083/mkl/include/fftw   source/complex_3d_double_ex1.c source/dfti_example_support.c -L./lib/em64t -lfftw3xc_intel -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -o complex_3d_double_ex1


    You mentioned g++ can work? do you use special compiler option when build the complex_3d_double_ex1.c ?
    (my test show g++ show many compiler error too, where if use gcc, the compile processing is ok).


    Best Regards,
    Ying

    KazikJuly 14, 2009 11:59 AM PDT
    Rate
     
    Re: Running FFTW Wrapper Library troubles

    Hello Ying,

    I'm sorry for the delay in answering. To make the story short:
    1) Yes, using icc helped and I compiled the examples successfully.
    2) My biggest mistake with the code that I have written on my own was that I have implemented some functions from the previous version of FFTW, which were not supported by FFTW3 any more (as Was suggested in one of the previous posts). When I've rewritten the code using FFTW3-functions everything went OK. So it was basically very silly mistake...

    Thank you for your post, I've almost lost a hope that this discussion forum is alive.
    --
    Kind regards,
    Kazik



    Ying H (Intel)July 14, 2009 8:23 PM PDT
    Rate
     
    Re: Running FFTW Wrapper Library troubles

    Hello Kazik,

    Thank you for your reply.  Sorry for our deley in Forum. In general, we encourage forum participant to share information and solve problem each other first.  And reply the probelm if no one can help :).

    Kind Regards,
    Ying


Forum jump:  

Intel Software Network Forums Statistics

16,369 users have contributed to 46,341 threads and 163,954 posts to date.

In the past 24 hours, we have 18 new thread(s) 102 new posts(s), and 67 new user(s).

In the past 3 days, the most popular thread for everyone has been Formula for the intersection of straight lines The most posts were made to Take a look at John Burkhard&# The post with the most views is \"-check none\" generates error

Please welcome our newest member bikerepair8


For more complete information about compiler optimizations, see our Optimization Notice.