1 Reply Latest reply on Nov 29, 2012 5:32 PM by bragadeesh

    multiple calls to clAmdFftTeardown() cause crash

    tim.dahmen

      We are using the fft library in a submodule of our software that needs to perform some operations in frequency space. The general idea is that

       

      When the submodule is started, we also initialize the fft library using the following code:

       

      setupData = new clAmdFftSetupData();

      clAmdFftStatus status = clAmdFftInitSetupData( setupData );

      status = clAmdFftSetup( setupData );

       

      Then we perform several fft operations till we are done with the module and close our module. When we close the module, we also close the fft library using

       

      clAmdFftTeardown();

      delete( setupData );

       

      This works good so far. The problem is, that once we closed the fft library, it seems impossible to initialize it again later. When we want to go back later to the fft module, and do the above twice, the second call to clAmdFftTeardown() causes an SEH exception.

       

      Now obviously we could implement some workaround to delay closing the fft library till the end of the program, but that would be kind of a last resport. Is there any experience on the above behaviour?

       

      regards Tim

        • Re: multiple calls to clAmdFftTeardown() cause crash
          bragadeesh

          Hi Tim,

           

          I did a quick check with a simple application that does the following many times:

           

          Setup library

          Create FFT plan

          Compute FFT

          Destroy FFT plan

          Teardown library

           

          The application worked fine with the memory footprint reminaing stable. Are you sure the problem is due to the FFT library? Are you correctly freeing all buffers, plans, resources etc in the submodule?

           

          If you can demonstrate with a code sample that the FFT library is st fault, then we can work on it. Thanks