Also another thing. If you use disks with different sector layout in a pool ashift must follow the lowest common denominator since ashift is applied on the pool and not the individual disks. When the pool is created you cannot change the value for ashift so choose it wisely.
This method is seriously flawed since many disks misreport sector sizes for compatibility reasons. (And I also think you wanted to write smallest common multiple.) See this page with the array of misreporting disks: https://github.com/zfsonlinux/zfs/blob/master/cmd/zpool/zpool_vdev.c#L108
As it has been already noted, some amount of storage space is lost by always using ashift=12 (or even 13 for some SSDs nowadays), but it's dependent of the usage pattern, average number and size of files, etc. There are also provisions to make this parameter tunable by vdev, not only by pool: http://open-zfs.org/wiki/Performance_tuning#ashift
I hink it would be a good idea to make this configurable (for the entire pool) at installation time in the PVE installer.