My research suggests that both the standard and the maximum (kernel limitations) block size for modern file systems (ext4, xfs) is 4KB. However, AWS allows IO operations as large as 256KB and says
For 32 KB or smaller I/O operations, you should see the amount of IOPS that you have provisioned, provided that you are driving enough I/O to keep the drives busy. For smaller I/O operations, you may even see an IOPS value that is higher than what you have provisioned (when measured on the client side), and this is because the client may be coalescing multiple smaller I/O operations into a smaller number of large chunks.
Where does Linux expose and/or allow configuration of "device block size?" When doing say, a full table scan in postgres (8KB blocksize), where can you see and/or configure the size of "IO Operations" the OS issues?