LVM and VxVM

LVM LTG size and MAX I/O on HP-UX

 
mscevola
Senior Member

LVM LTG size and MAX I/O on HP-UX

Hi Team,

 

I’m trying to better understand how to deal with I/O related performance issues on HP-UX.

 

If we analyze which components are in an I/O path, we could say that:

 

Logical I/O - what the process/thread requested through system calls such as read/write or pread/pwrite:

  • Application read/write call
  • System read/write calls
  • File System (VxFS, NFS, etc)
  • Virtual Memory

Physical I/O - what the host requested from the storage to satisfy the logical request from the application:

  • Volume Management (LVM device driver)
  • Multipathing (multi-path IO driver)
  • Disk device driver (e.g. SCSI)
  • IO ChannelFC Initiator (HBA Driver);  FC Cables;  FC Switches;
  • Disk SubsystemFC Target (Array Ports);  Array Cache (on controller);  Array Controller; LUN

There is a lot of information related to "max I/O" available for all the above components except LVM.

 

I've had a look at “HP-UX Performance Cookbook”, but there is something I’m not able to go deeper: LVM MAX I/O Size.

 

In this doc they say:

  • The maximum I/O size increased to 2MB.
  • LVM has been enhanced to support larger page sizes and newer revisions of VxFS are available.

In other HP’s document, “HP-UX 11i v3 Mass Storage I/O Performance Improvements”, I’ve found this information:

  • LVM now supports I/O sizes up to the extent size, within the limit of the escsi_maxphys setting and the HBA driver support.

In the web, there are a lot and detailed information about LVM LTG size on AIX systems, but nothing about HP-UX. Old posts in some forums talk about an LTG size of 256KB: http://www.mail-archive.com/oracle-l@fatcity.com/msg04755.html

 

Is LVM LTG related to LVM Max I/O size? 

 

How can I know what is the LVM LTG max size on HP-UX 11.23?

 

It is possible to get this information from some header file?

 

How does LVM manage I/O queues? Do you know if each VG has its own queue?

 

I would be grateful if You could shed some light on this.

 

--Paolo

4 REPLIES 4
Steven E. Protter
Exalted Contributor

Re: LVM LTG size and MAX I/O on HP-UX

Shalom,

Getting busy here in RL.

How does LVM manage I/O queues? Do you know if each VG has its own queue?

The kernel manages I/O not LVM. LVM manages the logical volumes as the name implies. If you are dealing with SAN based storage you can also toggle the i/o policy on multipathing. Least busy path seems to work best in a SAN environment.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Pete Randall
Outstanding Contributor

Re: LVM LTG size and MAX I/O on HP-UX

What is "LTG"?


Pete
mscevola
Senior Member

Re: LVM LTG size and MAX I/O on HP-UX

Hi Pete,

As far as I know, when LVM receives a request for an I/O, it breaks the I/O down into what is called logical track group (LTG) sizes before it passes the request down to the device driver of the underlying disks. The LTG is the maximum transfer size of an LV and is common to all the LVs in the VG. Large disk I/O requests made by applications were broken up by the LVM on LTG alignments. Throughput can be optimized by setting LVM’s LTG to match the disk’s max_transfer size.

I've found this info in IBM docs, but I guess it applies to LVM (no matter what OS you're using).

--Paolo
mscevola
Senior Member

Re: LVM LTG size and MAX I/O on HP-UX

Hi Steven,

 

Thanks for your reply.

 

I think that if it's true that "LVM now supports I/O sizes up to the extent size, within the limit of the escsi_maxphys setting and the HBA driver support", then LVM is able to coalesce or split up an IO request.

 

If LVM can break an IO request, then it must have some kind of queue. Don't you think so?

 

--Paolo