Unix filesystems are quite robust against fragmentation but you can always mount your btrfs subvolumes with auto_defrag or periodically run btrfs filesystem defrag (by hand or via cron job). I don't defrag my subvolumes very often, the performance remains acceptable even with those good "slow" mechanical hard drives. If you use SSD I would be surprised if you could notice a huge difference.
I/O performance is the consequence of several factors. A (heavily) fragmented filesystem: a sub-optimal I/O scheduler, a slow hard drive and so on and even the process scheduler. Unfortunately there is no magic formula but empiric tries-and-errors.