The attached file you sent that has two while loops performs data acquisition in the second loop which will take up more resources and slow down the overall program.
Also, the AI Read used in the second loop is a synchronous operation. This means that the second loop has to wait on the AI Read. The way around this would be to set the AI Read to run on a separate thread than the calling VI. To do this, open AI Read.vi, right click on its icon in the upper-right hand corner, and select "VI Properties." Select category "Execution" and for "Preferred Execution System," select "data acquisition," apply and OK. Save the VI as a new name so as not to modify VIs in vi.lib. This should set the AI Read to not run in the same thread as the rest of your code, thereby not lock
ing your parallel loop. This should help speed up your program.