Inodes do not have a physical relationship to disk characteristics, except as is a side-effect of the particular file system's design.
inodes are a filesystem metadata concept, and are used to attach metadata to on-disk structures or meta-structures (like directories, which are an inode that lists inodes reflecting its contents). As such, the any limitation on inodes is based on structures created when the disk is formatted for a given filesystem type.
From the link above:
Space for inodes must be set aside when an operating system (or a new
filesystem) is installed and that system does its initial structuring
of the filesystem. Within any filesystem, the maximum number of
inodes, and hence the maximum number of files, is set when the
filesystem is created.
So, yes, the limit is based on software either in the OS or the file system drivers. Linux file systems generally allow the OS to play a role in determining the number of inodes when formatting a disk.
The default setting creates an inode for every 2K bytes contained in
the filesystem, but the number can be adjusted by the user when
creating the filesystem. For example, it can be wise to create fewer
inodes when setting up a filesystem that will contain just a few large
files. Similarly, for a filesystem intended for mostly small files, it
is advisable to allocate more space to inodes and less to file
So by default most linuxes will allocate
ceil(formattedSizeInBytes/(2 * 1024)) => initialInodes.
This indicates (among other things) that the count of inodes will always be an exact power of two (as both the divisor and the dividend are intrinsically powers of 2).
Now, all that said, many older file systems were designed to store a single file per sector or block, so in those cases, the number of inodes is a function of the number of sectors the disk provides (plus whatever the file system creators deemed appropriate for links and directories, etc).
GPFS is an older filesystem, but it is designed for parallel access by mainframes and supercomputers, using techniques like multi-disk striping, so it is already going to great extents to divorce its operation from the physical characteristics of individual physical disks.