Hi Mrochon,
I believe you might be looking at the wrong timestamp information. The timestamp of the generation cannot be clearly identified. The timestamp of the waveform created will not be the same as the one after the generation has started. The timestamp is typically taken by using t0 (the start time) equal to the system time, dt (time between samples), and the total number of samples. If we arbitrarily assume that t=0 to start, then they would always be synchronized. In regards to the analog input, timestamps with our DAQmx read function are grabbed from the system time after you do your first DAQmx read. In addition to all this, I would like to state that the analog output and analog input task are actually starting nearly the same time. The delay betweeen when the trigger is received and the task is started is on the nanosecond scale. You could write an analog output directly into the analog input module and you should see the timestamps for the samples generated. However, the analog input samples will likely be 1 sample behind considering taking and generation a sample on the same rising edge might cause a missed sample.
I hope this helps,
Paul C.