-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bigger chunk sizes than 4KB? #710
Comments
Interesting analysis. At the moment the size depends on the request the guest OS sends to the IDE controller. Some OSes seem to request the exact range they need from the disk (e.g. Haiku, Windows 2000), so they wouldn't benefit from this change. There is already a |
I stand corrected: The improvements are significant for all OSes. I've measured the number of requests and the total downloaded bytes depending on various block sizes, and assigned block sizes between 256k and 1m. If you go much bigger, the downloaded size goes up significantly (because blocks are dowloaded that the OS didn't need). Thanks for the suggestion! |
It seems that for SerenityOS, loading 4KB "sectors" over the network is a massive bottleneck. Loading data in bigger chunks, and caching it, improves the experience drastically:
I also tried this setup with Windows 98, and applications (My Computer, Solitaire) start noticeably faster, but the difference is not as big.
Experimental setup
When testing locally, I configured v86 to also use the
k.copy.sh
server (by going tohttp://localhost:8000/?profile=serenity&cdn=//k.copy.sh/
and enabling CORS in browser).I ran all tests in Firefox, with cache disabled.
Here's the patch:
The text was updated successfully, but these errors were encountered: