Ok, al ser tantos registros, se toma un tiempo en leerlos y pasarlos. LO que te sugiero es que declares una linea adicional al principio del código que le indique al interprete de PHP que siga leyendo hasta que termine, usa la función
set_time_limit.