{"id":71,"date":"2012-03-16T17:24:07","date_gmt":"2012-03-16T16:24:07","guid":{"rendered":"http:\/\/www.pmsapp.org\/?p=71"},"modified":"2012-03-17T21:20:59","modified_gmt":"2012-03-17T20:20:59","slug":"performance-testing-the-pmsapp","status":"publish","type":"post","link":"https:\/\/mail-e.dk\/pmsapp.org\/?p=71","title":{"rendered":"Performance testing the pmsApp"},"content":{"rendered":"<p style=\"text-align: justify\">So a few weeks ago a colleague pointed out Jimmy&#8217;s website about the pmsApp and seeing as we have a few underused blades in our development environment I offered my help to Jimmy.<\/p>\n<p style=\"text-align: justify\">He&#8217;s already published my findings regarding failover testing of the pmsApp and today I thought I would post some performance metrics. The first set of tests will be using the pmsApp configured to use a RAID1 (software) array.<\/p>\n<p style=\"text-align: justify\">In order to run the tests, I have created two guests:<\/p>\n<p style=\"text-align: justify\">One running off the pmsApp, PMSTest, and the other running locally on the blade disk (It&#8217;s a single disk), PMSControl.<\/p>\n<p style=\"text-align: justify\">I have installed CentOS 6.2 minimal install on both of them and installed the openssh-clients package to allow me to use scp.<\/p>\n<p style=\"text-align: justify\">Each guest has 512 MB of RAM, a single NIC (dynamically configured (lease time is 36 hours)) and a 8 GB hard drive.<\/p>\n<p>Generally, speaking I ran three instances of the tests, unless there was a great disparity between the results, in which case I ran extra tests (normally two but sometimes three) and discarded the top and bottom results.<\/p>\n<p style=\"text-align: justify\">Generally speaking, the results of the guest running off the pmsApp were considerably less stable.<\/p>\n<p>Reboot Time :\u00a0 This measures the time taken from typing init 6 and pressing enter to the logon screen appearing. I found this test to be more reliable that pressing reset on the vsphere client or even using powercli.<\/p>\n<p>PMSControl\u00a0\u00a0\u00a0 PMSTEST (RAID1)<br \/>\n34.66 s \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 30.44 s<br \/>\n33.02 s \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 27.75 s<br \/>\n34.07 s\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 28.63 s<\/p>\n<p style=\"text-align: justify\">This was a clear win for the pmsApp.<\/p>\n<p style=\"text-align: justify\">The remaining tests are file copying tests. The source and destination server (depending on the test)\u00a0 was a third blade server running RHEL 6.0. In theory traffic bound for another blade never leaves the enclosure, but I&#8217;m not so sure. I ran these tests out of hours so there would have been very little traffic, if any, on the network. I did repeat some tests during the working day for good measure and results were comparable.<\/p>\n<p>SCP Write &#8211;\u00a0 Copy File VMware ESXi 5.0 iso (297 MB) from blade server to Guest<\/p>\n<p>PMSControl\u00a0\u00a0\u00a0 PMSTEST (RAID1)<br \/>\n24.675 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 45.195 s<br \/>\n30.980 s\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 45.197 s<br \/>\n28.505 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 56.486 s<\/p>\n<p style=\"text-align: justify\">The pmsApp is clearly slower.<\/p>\n<p style=\"text-align: justify\">SCP Read &#8211;\u00a0 Copy File VMware ESXi 5.0 iso (297 MB) from Guest to blade server.<\/p>\n<p>PMSControl\u00a0\u00a0\u00a0 PMSTEST (RAID1)<br \/>\n7.764 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 7.762 s<br \/>\n8.211 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 7.711 s<br \/>\n7.674 s \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 8.017 s<\/p>\n<p style=\"text-align: justify\">Reading is a tie.<\/p>\n<p style=\"text-align: justify\">SCP Write &#8211; Copy Directory containing multiple files (total size 203 MB) from blade server to guest. There is an 87 MB file and a 16 MB file, but the rest are sub 1 MB files.<\/p>\n<p>PMSControl\u00a0\u00a0\u00a0 PMSTEST (RAID1)<br \/>\n12.717 s \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0 20.572 s<br \/>\n13.092 s\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 18.772 s<br \/>\n11.752 s \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 23.380 s<\/p>\n<p style=\"text-align: justify\">Another writing test and the pmsApp is slower again.<\/p>\n<p style=\"text-align: justify\">SCP Read &#8211; Copy Directory containing multiple files (total size 203 MB) from guest to blade server. There is an 87 MB file and a 16 MB file, but the rest are sub 1 MB files.<\/p>\n<p>PMSControl\u00a0\u00a0\u00a0 PMSTEST (RAID1)<br \/>\n11.531 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 11.623 s<br \/>\n10.972 s \u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 11.082 s<br \/>\n11.294 s\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 11.245 s<\/p>\n<p style=\"text-align: justify\">Both the pmsApp and the direct guest are faster copying multiple small files than one big one, which is odd as I would&#8217;ve expected one big file to be quicker, but the results are consistent on both guests so I&#8217;m not too worried. I&#8217;d be happy to hear an explanation though.<\/p>\n<p style=\"text-align: justify\">A very small set of tests has shown that reading performance is comparable to hosting a guest directly on a disk. Unfortunately, write performance does suffer quite a bit, it&#8217;s ~ 40% slower and not very consistent.<\/p>\n<p style=\"text-align: justify\">In my next post I intend to use <a title=\"filebench\" href=\"http:\/\/sourceforge.net\/projects\/filebench\/\">filebench<\/a> to carry out some more tests using a more standardized approach.<\/p>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li><a href=\"#\" class=\"sharing-anchor sd-button share-more\"><span>Share<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><div class=\"sharing-hidden\"><div class=\"inner\" style=\"display: none;\"><ul><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-71\" class=\"share-twitter sd-button share-icon\" href=\"https:\/\/mail-e.dk\/pmsapp.org\/?p=71&amp;share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\"><span>Twitter<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-71\" class=\"share-facebook sd-button share-icon\" href=\"https:\/\/mail-e.dk\/pmsapp.org\/?p=71&amp;share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\"><span>Facebook<\/span><\/a><\/li><li class=\"share-end\"><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>So a few weeks ago a colleague pointed out Jimmy&#8217;s website about the pmsApp and seeing as we have a few underused blades in our development environment I offered my help to Jimmy. He&#8217;s already published my findings regarding failover &hellip; <a href=\"https:\/\/mail-e.dk\/pmsapp.org\/?p=71\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li><a href=\"#\" class=\"sharing-anchor sd-button share-more\"><span>Share<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><div class=\"sharing-hidden\"><div class=\"inner\" style=\"display: none;\"><ul><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-71\" class=\"share-twitter sd-button share-icon\" href=\"https:\/\/mail-e.dk\/pmsapp.org\/?p=71&amp;share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\"><span>Twitter<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-71\" class=\"share-facebook sd-button share-icon\" href=\"https:\/\/mail-e.dk\/pmsapp.org\/?p=71&amp;share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\"><span>Facebook<\/span><\/a><\/li><li class=\"share-end\"><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div><\/div><\/div>","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[1],"tags":[],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/p2gkts-19","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/posts\/71"}],"collection":[{"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=71"}],"version-history":[{"count":13,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/posts\/71\/revisions"}],"predecessor-version":[{"id":101,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=\/wp\/v2\/posts\/71\/revisions\/101"}],"wp:attachment":[{"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=71"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=71"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mail-e.dk\/pmsapp.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=71"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}