Dividing the # of lines being pumped at the GPU by 10 does help -- I get 60 FPS w/ 4 spinnies and 4 478x118 waveforms .
Using the OS X Driver Inspector tool, I found that when this happens we are sending about 6-10MB/sec of render commands to the GPU. I think we need to create the waveform as a vertex buffer once (so it's stored on the GPU) and then issue a single render(start-vertex, end-vertex) command.
Dividing the # of lines being pumped at the GPU by 10 does help -- I get 60 FPS w/ 4 spinnies and 4 478x118 waveforms .
Using the OS X Driver Inspector tool, I found that when this happens we are sending about 6-10MB/sec of render commands to the GPU. I think we need to create the waveform as a vertex buffer once (so it's stored on the GPU) and then issue a single render( start-vertex, end-vertex) command.