The IEventPipe2 interface has a property PollInterval which is the number of milliseconds between checks for pi server events. The default (for pipoint pipe type) is 5 seconds. The event pipe object has a MaximumCount property which defaults to 10000. You can use these two properties to change how often calls are made to the server and how much data is retrieved.
I believe the maximum event rate for a PISDK event pipe is on the order of 10k events per second. If you expect a higher rate than that, you can use multiple pipes.
AFSDK 2.5 included a PISDK Event Pipe-like API, PIDataPipe. This has better performance characteristics (throughput and memory usage) than the PISDK event pipe and is advisable if you are developing a .NET application. In AF 2.6, AFDataPipe extends this functionality to AF Attributes.