I've spent days trying every trick I could find for improving the speed of homestead on my windows machine. The only thing that gave any noticeable performance increase was using NFS (winnfsd).
Yet still there are pages on my app that take over 10 seconds to POST and respond which is
frustrating for development. It's not every page, just the ones that have to do a lot of processing, and the same pages take a half a second to process on my AWS nano servers.
SETUP
I use the vagrant plugins: winnfsd, bindfs and vbguest.
Software running at their latest versions: Virtualbox, Vagrant, Homestead, Vagrant Guest Additions.
I use a single core and 2048 memory in my Homestead.yaml file. Multiple cores decrease performance.
I tried every mount_option I could find and they had little or no effect.
I moved all files to SSD, which gave a small improvement.
I've tried SMB as well but it gave about the same performance.
Time To First Byte
If I place basic HTML in my index.php or index.html file then the TTFB is about 10ms, and that seems fine to me.
If I run a simple MySQL query to SHOW TABLES it takes 30ms, which again seems fine.
Blade pages have a ttfb of around 500ms.
As soon as any queries are needed the performance goes way down. For example, a basic Eloquent query which is dumped as an array takes 1.6 seconds.
Two separate Eloquent queries seem to take the same time as a single query.
Processing an Eloquent collection of 100 items and their relationships might take over 2 seconds.
POSTing and waiting for the response seems to double the time taken.
PHPMyAdmin running on homestead takes over 1 second for a table view.
WordPress WP-Admin running on homestead can take 10+ seconds to save a page. (page builders)
After running vagrant up the first request to my homestead.test site takes about five times longer than any following requests. Might be connected?
So I'm not sure if the slowness comes down to a lack of processing power, or problems with the shared folders, or it could be a MYSQL communication / configuration problem. Either way I'm out of ideas for now and I lack the required understanding of Vagrant to narrow down the possibilities.
After all this messing about, my problem was Avast Anti-virus.
I did previously disable all Avast shields when running Homestead to no effect but it turns out there is a specific option for virtualization that needs to be disabled and then your machine needs to be restarted for changes to take effect.
The option is:
Avast > Settings > Troubleshooting > Uncheck Enable Hardware-Assisted Virtualization
Load times have decreased dramatically on everything and even WordPress runs pretty well now.
Thank you for coming back after a month and posting the solution. I'm sure it will help others. Please mark your post as the solution to help others find it. Damn AV! lol