Q: Could you please let me know if there are any tools other than perfmon to capture I/O in a better way?
A: There are a few different ways to monitor the I/O workload of a server. The easiest for the database administrator to use will always be Performance Monitor because that is built into the Windows OS, and the data is available to you from the servers console or remotely, provided that you have the permissions to view the perfmon data (by being in the "Performance Monitor Users" group on the server).
However, depending on your environment there are some additional options available to you. If you are in a VMware environment, then you can look into using the vSphere management tool to view the storageperformance data as it is being captured at the host level.
If you are in a Hyper-V environment, then you can look at the perfmon counters on the host and see how things are being measured there. You can also use SCOM to see the same kind of perfmon data put view it through the enterprise wide monitoring tool.
If you are in a SAN environment (which most shops using a hypervisor are), odds are the SAN has some sort of monitoring tool as well so that you can see performance data as it is measured from the SAN level. The biggest downside to the SAN level monitoring is that often the performance data collected from the SAN isn't as frequent as it would be in Windows via perfmon, so problems may not be as easy to see at the SAN level as they would be at the Windows perfmon level.
Are any of these tools better than performance monitor? I'd say no, they aren't better, just different views of the same kinds of data. That said, sometimes we need to look at all the layers of the environment to see where the bottlenecks are coming into play.