JHH,
Your findings seem to confirm that basically your AO operation is going as fast as the processor can handle it.
Regarding your specific questions:
1) How can I determine if I am using DMA or IRQ and how many of each?
Static I/O operations like the ones you were performing with AO (and probably with the counters if you were doing simple event counting) are not DMA or IRQ based. These operations basically query the board for a value (simple event counting for example) or update the output with a value (AO case). IRQ and DMAs are data transfer mechanisms that apply to blocks of data, normally related to buffered operations.
2) As far as the PCI-6703, and just for curiosity, how can I ensure that this board is using DMA?
As I mention
ed above, if you are not doing buffered operations (and you are not because it is impossible with the 6703 AO, I am not sure what your 6601 counters are doing) then you are not using DMAs or IRQs.
3) I think I can replace the PCI-6703 by a PCI-6713.
If you have a 6713 then you can use it to perform Buffered AO and lower the CPU load on your system and get hardware timed output.
You have posted a new DevEx question related to this one so I paste the link to it:
http://exchange.ni.com/servlet/Redirect?id=9127060
I hope this helps,
Alejandro Asenjo