mborgerson / fatx

Original Xbox FATX Filesystem Library, Python bindings, FUSE driver, and GUI explorer
GNU General Public License v2.0
122 stars 21 forks source link

Very slow write speeds on Linux #63

Closed neofright closed 1 year ago

neofright commented 1 year ago

I have mounted my Cerbios formatted F partition via: ./fatxfs /dev/sdx /mnt/Xbox_F --drive=f

I'm using # watch progress -w to monitor the speed of file transfers. e.g. mv './Xbox Game (USA)' /mnt/Xbox_F/Games/

The write speeds are extremely slow (4 MiB/s) and are slower than they would be if using FTP.

[671837] mv Xbox Game (USA)/Xbox Game (USA).cci
        61.7% (734.8 MiB / 1.2 GiB) 4.1 MiB/s remaining 0:01:50 

If I cat one of the games on the FATX HDD to read it (and pipe it into /dev/null):

[709219] cat /mnt/Xbox_F/Games/Xbox Game (GLO)/Xbox Game (GLO).1.cci
        35.4% (1.4 GiB / 4.0 GiB) 127.9 MiB/s remaining 0:00:20  

Then I am getting the bus speed of the disk.

Is this a known/expected issue that write speeds are only ~3% of the speed of reads?

(I should state that to confirm it wasn't an issue with the filesystem that the source files are stored on, I also cat'ed the same file I am moving (to the Xbox disk) to /dev/null and I got 400 MiB/s from my RAIDZ.)

If you would like any system info please let me know and I'll be happy to provide it.

mborgerson commented 1 year ago

fatxfs hasn't really been benchmarked/optimized in any meaningful way, mostly the focus has been just getting things to work. There are obviously lots of performance improvements to be made, so if you want to fix some issues, patches are welcome

neofright commented 1 year ago

Thank you for the response, I appreciate it.

In terms of optimizations, the code base is largely more complex than I am capable of understanding! However, I am certainly interested in the project and if I can provide PRs then I will.