[comp.sys.sgi] Striping and Logical Volumes

rpaul@crow.UUCP (Rodian Paul) (01/22/91)

Perhaps someone can explain the following to me... 

I created a logical volume consisting of 3 * 1.2GB IPI2 drives, with a 
stripe of 3.

Once the sucker's created (using partition 7 on each drive, i.e the whole
drive, all partitions the same size) I get the following output from 'df':

(all figures in 512K blocks)

Filesystem                 Type  blocks     use   avail %use  Mounted on
/dev/dsk/lv0                efs 4901760  669740 4232020  14%  /prod

Now if I take a look at a 1.2GB SMD drive (all I've got for reference but I
assume a formatted SMD is close to a formatted IPI) I get the following
amount of blocks on an efs file system: 1921920 blocks
           Mutliply that * 3 and I get: 5765760 blocks
     Subtract the difference of the lv: 4901760 blocks
                             and I get:  864000 blocks

Or approx 400MB difference. Now I assume that there are a whole lot of
tables created with a logical volume, even more if striped. I don't
recall reading anything about how much space these tables will take up
in the manuals (allthough a comment may in fact be there). So, could
someone perhaps explain to me what kind of size differences to expect with 
logical volumes and if striping uses more space.

If striping does in fact take up more space (I can't test this out at the 
moment as the machine must stay up) can I expect more throughput? The manual 
section I read said that ideally, you should arrange to connect the disks
you are striping accross to be on different controllers. We're only using 
1 (Xylogics 7800 16-drive IPI disk controller 0: Firmware version 2.2.4)
for 4 IPI2's. The machine is a 380s with 256MB RAM and doesn't have any 
other drives on it as yet.

Can I expect much of a difference in performance if I remove the stripe?

Any comments will be greatly appreciated.
-------------------------------------------------------------------------------
phone: +81 (3) 5706-8357
  FAX: +81 (3) 5706-8437
email: crow!rpaul@ccut.cc.u-tokyo.ac.jp
       ccut.cc.u-tokyo.ac.jp!crow!rpaul

daveh@xtenk.asd.sgi.com (David Higgen) (01/23/91)

In article <9101220711.AA12984@crow.omni.co>, rpaul@crow.UUCP (Rodian Paul) writes:
> Perhaps someone can explain the following to me... 
> 
> I created a logical volume consisting of 3 * 1.2GB IPI2 drives, with a 
> stripe of 3.
> 
> Once the sucker's created (using partition 7 on each drive, i.e the whole
> drive, all partitions the same size) I get the following output from 'df':
> 
> (all figures in 512K blocks)
> 
> Filesystem                 Type  blocks     use   avail %use  Mounted on
> /dev/dsk/lv0                efs 4901760  669740 4232020  14%  /prod
> 
> Now if I take a look at a 1.2GB SMD drive (all I've got for reference but I
> assume a formatted SMD is close to a formatted IPI) I get the following
> amount of blocks on an efs file system: 1921920 blocks
>            Mutliply that * 3 and I get: 5765760 blocks
>      Subtract the difference of the lv: 4901760 blocks
>                              and I get:  864000 blocks
> 
> Or approx 400MB difference. Now I assume that there are a whole lot of
> tables created with a logical volume, even more if striped. I don't
> recall reading anything about how much space these tables will take up
> in the manuals (allthough a comment may in fact be there). So, could
> someone perhaps explain to me what kind of size differences to expect with 
> logical volumes and if striping uses more space.
 
Actually there are NOT a lot of tables associated with logical volumes,
and those that there are, exist in the volume header partition of the drive
and do not impact the actual available space in the "working" partitions.

The flaw in your assumptions I think is that SMD drives are not the same
size as IPIs. IPI disks use a parallel-dual-head arrangement for speed, 
so effectively the physical sector size on an IPI is half that of an SMD,
hence more sector addressing overhead and a lower formatted capacity.
Tradeoff of size for speed!

> If striping does in fact take up more space (I can't test this out at the 
> moment as the machine must stay up) can I expect more throughput? 

No, striping does not take up any additional space.
As far as throughput goes, it depends on your I/O patterns. For a single
process with no other I/O active, you typically get about 50% more 
throughput by striping. For multiple concurrent I/Os, you might get up
to a factor of 2.5 improvement on reads, around 2 on writes. 
Don't take these as anything more than one observed data point, though: it
depends enormously on the actual pattern of I/O activity.

> The manual section I read said that ideally, you should arrange to connect 
> the disks you are striping accross to be on different controllers. 
> We're only using 1 (Xylogics 7800 16-drive IPI disk controller 0: 
> Firmware version 2.2.4) for 4 IPI2's. 

Yes, it makes a considerable difference when you stripe via independent
controller channels: striping on the same controller channel is frankly
not worth doing. Note that the Xylogics IPI controller (though no other
types of controller so far) has effectively two independant channels
on each board, so it may be considered as two controllers. Minor numbers
0 - 7 are on the first channel, 8 - 15 on the second. The disks should be
in separate groups when striping to take advantage of this; eg you would
stripe ipi0d0s7 with (say) ipi1d8s7 rather than (say) ipi0d1s7.

> Can I expect much of a difference in performance if I remove the stripe?

See above. It will not make any difference to available space. 
Incidentally, this may be obvious but just in case: you clearly can't
just remove the "stripes=" field from the lvtab & expect the old filesystem to
work; you would be rearranging the way the system views the storage!

You'd have to make a new filesystem (backing up anything important from
the existing configuration first, of course)!

Hope this clarifies the issue. Free free to ask me questions about
logical volumes by email.


			Dave Higgen (daveh@xtenk.asd.sgi.com)

jeremy@perf2.asd.sgi.com (Jeremy Higdon) (01/23/91)

In article <9101220711.AA12984@crow.omni.co>, rpaul@crow.UUCP (Rodian Paul) writes:
> Perhaps someone can explain the following to me... 
> 
> I created a logical volume consisting of 3 * 1.2GB IPI2 drives, with a 
> stripe of 3.
> 
> Once the sucker's created (using partition 7 on each drive, i.e the whole
> drive, all partitions the same size) I get the following output from 'df':
> 
> (all figures in 512K blocks)
> 
> Filesystem                 Type  blocks     use   avail %use  Mounted on
> /dev/dsk/lv0                efs 4901760  669740 4232020  14%  /prod
> 
> Now if I take a look at a 1.2GB SMD drive (all I've got for reference but I
> assume a formatted SMD is close to a formatted IPI) I get the following
> amount of blocks on an efs file system: 1921920 blocks
>            Mutliply that * 3 and I get: 5765760 blocks
>      Subtract the difference of the lv: 4901760 blocks
>                              and I get:  864000 blocks
> 
> Or approx 400MB difference. Now I assume that there are a whole lot of
> tables created with a logical volume, even more if striped. I don't
> recall reading anything about how much space these tables will take up
> in the manuals (allthough a comment may in fact be there). So, could
> someone perhaps explain to me what kind of size differences to expect with 
> logical volumes and if striping uses more space.

Logical volumes do not take up any additional space.
The IPI disk drives have a useable capacity of 858 MB.  The SMD drives have
a useable capacity of 1033 MB (useable capacity does not include spare
sectors and tracks).  Thus, your numbers look about right.

> 
> If striping does in fact take up more space (I can't test this out at the 
> moment as the machine must stay up) can I expect more throughput? The manual 
> section I read said that ideally, you should arrange to connect the disks
> you are striping accross to be on different controllers. We're only using 
> 1 (Xylogics 7800 16-drive IPI disk controller 0: Firmware version 2.2.4)
> for 4 IPI2's. The machine is a 380s with 256MB RAM and doesn't have any 
> other drives on it as yet.
> 
> Can I expect much of a difference in performance if I remove the stripe?
> 
> Any comments will be greatly appreciated.

Actually, on IPI, you want to have different members of the stripe group
on different ports on the controller.  Since you have three drives in the
group, that probably means that two are on one port, and one is on the
other.  You would probably get the best performance if you made a two-way
stripe with each disk on a separate port of the controller.

> -------------------------------------------------------------------------------
> phone: +81 (3) 5706-8357
>   FAX: +81 (3) 5706-8437
> email: crow!rpaul@ccut.cc.u-tokyo.ac.jp
>        ccut.cc.u-tokyo.ac.jp!crow!rpaul

		Jeremy Higdon

SGI's opinions and mine might coincide.