02-01-2008 01:46 PM
Yes I agree that the core 2 should be significantly faster independent of GHz. I assumed that this was and is a faster pc but the pci is running slower. I have to essentially send a large digital out buffer data while having a continious Digital task in keep reading to avoid a buffer overrun. I can not stop the din task since I am reading a devices respones to the digital out command stream. This works on my old pc just not the new one. This leaves me to believe that the write to digital out task is slower (when I write >5MB array to the buffer no problem but 5MB takes too long and I get a buffer overrun) I will check on DMA vs Prog IO. The device is a PCI-6534 I assume that it is already set for DMA? Thanks for all the help.
Paul
02-01-2008 03:32 PM
02-02-2008 10:05 AM
02-02-2008 11:10 AM
02-02-2008 01:07 PM - edited 02-02-2008 01:09 PM
in my case (and Falkpl as i understand) the problem is definitely the card: i have into same buffer overrun problem at too high clock rates, even tough i monitor my buffer to have way sufficient buffered data. This problem occurs at lower clock rates on dual cores rather than single cores, consistently. i assume therefore it is a hardware related problem, correlating the motherboard and the card.
Falkpl: you can use the 'DAQmx write' property nodes to set and monitor all buffers. very usefull feature. To see how i operate you can look there for some short demo of it. be aware that you can monitor also while writing to buffer.
in my case i read these values every 50ms or so, and send them trough an AE to a pop up windows that displays horisontal bar indicators, very much the same way a CD burner shows writing status. it has two indics: one the buffer, and the other one the nb of written elements (max is the expected nb of DO). How i do the sequence: buffer fills up to 2MB. Exp starts. buffer fills faster than get emptied. buffer fills to 16MB, and is updated as the sequence is running. when no data has to be inserted anymore, buffer slowly gets emptied while exp indics reach its max value. Buffer overrun is easy to observe: buffer not empty but no data is written to card anymore.