May not be a complete answer to your question but useful to know.
If you really need fast GPIO or GPIO which is "real time" (meaning that you can guarantee, for example, how long a signal stays high / goes low for, then you should not be using a non-RTOS (Real Time OS) device, such as a Raspberry Pi with Linux kernel. (Or if you need particularly "regular" [in time] signals, such as those used for clock signals, which you cannot achieve with a non-RTOS device.)
While there are "real time OS" kernels available for Linux, this is still only a "regular" linux kernel with higher rate of context switching.
If you need higher GPIO performance you have two options:
Use something like SPI interface on the Pi or I2C. (Or even UART.) These (probably) have specific hardware circuitry to support higher rates of data transfer than can be achieved with just general purpose IO which is slow.
Your alternatives to this are:
Use a microcontroller, which is a realtime device.
Use something like an FPGA, which is programmable digital logic and is not only realtime but also a truly parallel IO device.
I suspect you are in a similar situation to myself about 6-7 years ago where I worked on a project involving R-Pi's and I was not able to get high enough rates of IO from the GPIO to interface with things like ADCs. (Even at audio frequencies.)