gnuplot limitations

I'm running a simulation (programmed in C) which makes calls to gnuplot periodically to plot data I have stored.

First I open a pipe to gnuplot and set it to multiplot:

FILE * pipe = popen("gnuplot", "w");
fprintf(pipe, "set multiplot\n");
fflush(pipe);

(this pipe stays open until the end of the program when I open it)

Next I use fopen to open a file called "plot". Write all the commands I want to have plotted (there's quite a few of them as many of them are just plotting 1 point with a specific color and point style). Once I've written all the commands to plot I close "plot"

Then I use the pipe again to load my file

fprintf(pipe, "load \"plot\"\n");

I'm running it like this so I can constantly plot on the same window and see my plots in real time as the program runs.

Functionally it works but a delay starts to build up and eventually becomes extremely significant.

My load commands are generally on the order of 2000 lines.

So to actually get to a question, does gnuplot have strange behavior for very large loads or can plot take a long time with that. My guess is that my program is piping loads to gnuplot before previous commands are finished completing. Has anyone had experience with this kind of situation, or can anyone suggest a better method for real time plotting in C.