Do you have any idea of what caused the memory corruption? I still need to write tests for the IPPDSP package, and this might be relevant. Intel depreciated all the functions that do memory allocation, and require the user to provide their own buffers. I'm passing buffers to IPP in the form of Julia vectors. I have had the entire Julia process crash on several times when I messed up indexing. IPP must have written out of bounds. That was my fault. The wrappers are now fixed and crash-free, unless there is something I haven't tested for.
It's a shame that Intel charges for IPP. I really wish I could include libipps with the IPPDSP package. (and sorry for hijacking your thread) On Tuesday, August 5, 2014 5:16:32 AM UTC-6, Neal Becker wrote: > > Jay Kickliter wrote: > > > I'm actively developing that code at the moment, and haven't implemented > > that yet. I still haven't decided how to do it. I could make it the > user's > > responsibility to ensure that the input is of a length that wouldn't > have > > any leftovers, but I'd like to handle it. I'm writing this code for my > > needs, where I sometimes need to processes hundreds of GB of IQ data. > I'd > > prefer to just read a bit of file/stream, process it, and repeat without > > thinking about input length. > > > > If you see anything else that doesn't make sense, please let me know. > I've > > spent months reading books and blog posts on multirate filtering, and it > > only recently made sense to me. I never intended to handle > interpolation, > > decimation, and rational resampling in separate functions. I'd like to > > combine them to make the code more manageable. I think resample() can > > handle all of them, but I may need to change a few things. Next on the > todo > > list is arbitrary sample rate conversion (if I can ever read that > chapter > > of Fred Harris book without giving up). > > > > If you do a lot of DSP work and need speed, I also have IPPDSP.jl > > <https://github.com/JayKickliter/IPPDSP.jl>. > > > > On Monday, August 4, 2014 3:40:07 PM UTC-6, Neal Becker wrote: > >> > >> Very interesting code. One question: > >> > >> It appears the variables "xleftover" (and similar) are never used? > >> > >> > > My c++ code has separate classes for fir, decimation, and interpolation > and I > like the design. Only pay for what you need. I never use matlab, but > AFAIK the > filter design used there a major waste of cpu cycles, not taking advantage > of > efficient interpolation, decimation, or rational rate conversion. > > In the case of decimation, I do maintain state (leftover) between > invocations of > the filter. Sometimes I have needed this. > > I wrote python wrappers for IPP but abandoned it. I found IPP was causing > memory corruption on my platform. > >
