Sorry, I have no idea in this case on what the limits will be for your device.
Once things are setup, the code simply sends the buffers to the other side...
There are lots of things that can influence the throughput.
For example: I am guessing that your device is running at: USB Full Speed - 12Mega Bits per second. So probably top end is then 12/8. Or about 1.5Mega Bytes per second.
I would assume that that would be if every USB frame was used and the 64 byte packets were filled. Now if it ran at High Speed, like a few USB Serial adapter do, this would be 480M Bits per second.
And each packet could be up to 512 bytes.
Looking at the RAWHID page:
https://www.pjrc.com/teensy/rawhid.html - you will notice that it says you can send up to 1000 packets per second each direction.. And again this is 64 byte packets.
I have a version of RAWHID that I setup to run at high speed and if I remember correctly, it did show about 15 times throughput.
Also if you do things like, SerialUSB.flush() much at all, and on average each packet is only half full, you reduced your throughput more or less in half.
And with USB, it may also depend on if other devices are also connected doing things.
It will also depend on how fast your actual device grab data. For example, if the device is some form of USB to Serial adapter, that talks to another internal chip through an UART, then how fast is this UART running.