Due native USB bidirectional I/O performance [Now with specific example]

I've run the test. I can confirm similar results.

paul@preston:/tmp/t > ./test 
Succfully opened /dev/ttyACM0 for reading
Total time to run test with 2400 packets of size 64 was 13 seconds
paul@preston:/tmp/t > ./test 
Succfully opened /dev/ttyACM0 for reading
Total time to run test with 2400 packets of size 32 was 81 seconds

Something is clearly very wrong with the 32 byte test.