How does one determine the "measurements" on their system to ensure they are correcting problems the way they intended?  i.e., How do you measure maximum bandwith on your system?

Posted on 2009-05-25
Medium Priority
Last Modified: 2013-11-14
Is that how you measure maximum bandwith?  Multiply "bus maximum" by "bits wide"?  If so, how does one determine these specific measurements on their system?  

(If you grasp where I'm going with this, please feel free to discuss "other" measurement standards, so that I might better understand stuff like this going forward.  It's a wide open question for hopefully learning how these measurements work so I know what to look for.)
Question by:CanadianJeff
LVL 17

Assisted Solution

by:Gerald Connolly
Gerald Connolly earned 800 total points
ID: 24470825
How long have you got?
Its realtively easy to work out the maximum bandwidth of your system, just start at the CPU and work out all the connections and their bandwidth, obviously the smallest number in any link (say disk to memeory is the bottleneck.
How do you test real bandwidth versus theorectical bandwidth? well as i have already explained the theorectical stuff is relatively simple, but useable bandwidth is more difficult.
Overall bandwith (performance) is difficult, look at the PC magazines to see the different methods that they use to catagorise performance, and some PC's perform better with different applications than others.
However for storage the usual benchmarking programs are IOmeter, Bonnie, SPC, and my favourite IOzone. (IOzone, generates great charts 3d surface charts that show how your system works at different file and record sizes www.iozone.org )

Author Comment

ID: 24472091
I get the impression that I'd better be prepared to get in the mud if I'm going to go down that road.  So, because I'm not particularly interested in being a computer engineer, etc., I'll try to stick to understanding what affects me and my computing environment.
You said: just start at the CPU and work out all the connections and their bandwidth.  Is there a basic/standard protocol way of doing this that a layman like myself can/should follow?  
i.e., Step 1: CPU to ?.  Step 2:  ? to ?.  Step 3: Hard Disk to RAM?  Step 4: etc., etc.  And, then, how does one see the bottlenecks, because different measurement units are being used& do you know what I mean?  How do I see a bottleneck when one measurement is based on RAM, while another is ____?  Are all the measurements based in bandwidth, then?  
I guess the question is, as a layman, should I even look at this path, or just glean whatever I can from the basic terms and move on?  Or, use one of the programs youve suggested (as a non-IT person, would these programs serve a purpose for me)?  
LVL 17

Assisted Solution

by:Gerald Connolly
Gerald Connolly earned 800 total points
ID: 24472524
Look up the CPU chip that is in your server, the specs will tell you its max bandwidth from CPU via the various cache's to mRAm, Your RAM will have a defined BAndwidth (not capacity) GB/sec, the PCI (whatever flavour) will have a max bandwidth, the interface card will have its numbers as well, (PCI interface one side, the connection medium on the other (SCSI, SATA, SAS, FibreChannel etc) then the RAID controller if you have one, its back-end channels and then the disks.
Most people don't bother with all that and just check the actual throughput using as i said before one of the Benchmark programs. Both IOmeter and IOzone are easy to use and you don't need to be a computer engineer to run them.
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

LVL 69

Accepted Solution

Callandor earned 600 total points
ID: 24472683
To identify bottlenecks in the cpu, I would check task manager to see if the load is hitting 100% for any length of time. If you have an Intel P4 or Core-family cpu, checking the FSB is also something to look for, as a lower setting would hobble your cpu. The i7 doesn't have an FSB, so this does not apply. You have to be aware that many cpus now employ energy saving modes such as SpeedStep which deliberately reduce the cpu multipliers to slow it down.

RAM can slow you down unless you use lower latency RAM, but this is mostly relevant to gamers. RAM that isn't fast enough to keep up with the cpu may lead to crashes as it is forced to run faster than designed. DDR2-800 is actually fast enough for most cpus, except for i7's.

Video cards can slow you down if you don't use one that is designed for you application. 3D modelling and CAD cards make use of OpenGL and benefit from cards designed for that. 3D games benefit from the latest 3D gaming cards listed on tomshardware, for example. You can usually tell the video card is the bottleneck in a game by the stuttering and low framerates - anything less than 30 is unplayable.

Hard disks are the slowest component of any pc and will benefit from a speedup; however, most 7200 rpm drives will do an adequate job these days. You can tell it is the bottleneck when your cpu is mostly idle and your hard disk is active for a long time, and optimizing it may require investigating what is running that takes so long (antivirus scanners are a typical cause). You can move up to a VelociRaptor (or even a cheaper early model Raptor) which spins at 10000 rpm, or get an Intel or OCZ Vertex SSD (other models currently have severe write lag problems).
LVL 18

Assisted Solution

BigSchmuh earned 600 total points
ID: 24472811
I think you have 2 useful and complementary approaches:
1/ Estimate your maximum budget
One keep telling you the "Strategic" word.
==> Estimating the expected business metrics is too often minimized :
  • How long can you rely on manual works or paper after a major crash ?
  • How long does a transaction should take ?
  • What if you lost 1 hour of transactions ?
Having a budget allows to size the overall system along with backups and recovery plans

2/ Estimate your needs before challenging the system
You have 10 people using this great HD video edition tools allowing for 2 HD stream to be mixed in real time on a MPEG 4 live stream
You have 1000 CallCenters agents using SIEBEL on a 20M customer db
==> Sometimes it's hard...but it worth the try :
raw 1080p is 8MB per frame which is 200MB/s at 25fps = A minimum of 2 dedicated striped drives per stream !
searching a customer in 20M means (at least) an index scan (all in cache + 1 sequential io) x "a customer display" (involving about 20 random read io) x 1000 / "think time" (of 5sec) = 4000 IOPS (1 single Intel SSD X25-E may be enough)

Usually, you'll find the bottleneck in the (expected) order (lowest to highest bandwidth).
  • Random IO (where SSD, 15krpm drives, RAID levels and partition alignment help)
  • Network (where 10Gbe, Fiber and Infiniband help)
  • Sequential IO (where striped RAID levels help)
  • GPU (gamers care this one)
  • RAM
  • CPU
THEN measurement of the maximum bandwidth is a matter of tools AND problem fixing procedures (including hw support) when the expected bandwidth is not in the 20% tolerance ratio.

Author Closing Comment

ID: 31585144
Thanks guys, got more than I asked for, or could grasp!!! LOL... better idea now what it means.

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Arrow Electronics was searching for a KVM  (Keyboard/Video/Mouse) switch that could display on one single monitor the current status of all units being tested on the rack.
Compliance and data security require steps be taken to prevent unauthorized users from copying data.  Here's one method to prevent data theft via USB drives (and writable optical media).
This video teaches viewers how to encrypt an external drive that requires a password to read and edit the drive. All tasks are done in Disk Utility. Plug in the external drive you wish to encrypt: Make sure all previous data on the drive has been …
This tutorial will walk an individual through the process of installing the necessary services and then configuring a Windows Server 2012 system as an iSCSI target. To install the necessary roles, go to Server Manager, and select Add Roles and Featu…
Suggested Courses

597 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question