The fast semihosting works for output only, however it is backward-compatible with the regular semihosting, that works both ways. I.e. you can use the fast semihosting to output data from the device without any delays, and at the same time use the regular semihosting API to read the input from VisualGDB.
If you are looking for a fast way to send data to the device, please consider using the Test Resource Manager API.