Try reducing the size of the data buffers as having such a large set of data buffers is probably not efficient.
Your data buffer size should be set so that it is large enough to accommodate the number of samples that would be collected in one iteration of the loop with the sampling interval that is set. You may wish to try a data buffer size in the region of 500,000 to 1,000,000 samples.
Are you implementing a callback Delegate function in your VB .NET code or using the ps6000Wrap.dll to handle the copying of data from your driver buffers to temporary application buffers?
Once data has been copied into the application buffers in the callback, it should be processed/copied elsewhere as required.